Skip to content

Commit 0515743

Browse files
authored
Update README.md with more thorough gradlew instructions
1 parent 8f58eb4 commit 0515743

File tree

1 file changed

+48
-3
lines changed

1 file changed

+48
-3
lines changed

README.md

+48-3
Original file line numberDiff line numberDiff line change
@@ -113,15 +113,60 @@ If you're a developer, you can add your own Ripper by following the wiki guide:
113113

114114
# Compiling & Building
115115

116-
The project uses [Gradle](https://gradle.org). To build the .jar file,
117-
navigate to the root project directory and run at least the test you
118-
change, e.g. Xhamster. test execution can also excluded completely:
116+
The project uses [Gradle](https://gradle.org).
117+
118+
In particular, we use the `gradlew` script (`gradlew.bat` on Windows)
119+
to build the app and run tests.
120+
121+
To build the .jar file and run the appropriate tests, navigate to the
122+
root project directory and run `gradlew` with the appropriate commands
123+
(see below). Ensure that you manually test that your change works,
124+
add or update the corresponding test, and run at least the test(s)
125+
that are relevant to your change.
126+
127+
For example, if you modify the Xhamster ripper, you might run this or
128+
a similar command:
129+
130+
```
131+
./gradlew clean build testAll --tests XhamsterRipperTest.testXhamster2Album
132+
```
133+
134+
Here's a breakdown of the functionality of the `gradlew` scripts:
135+
136+
The `build` verb will build the `.jar`, the tests, and will also *run*
137+
the tests ,except for disabled and flaky tests.
138+
139+
Thus `build` and `build test` are actually synonymous.
140+
141+
```bash
142+
./gradlew build
143+
./gradlew build test
144+
```
145+
146+
You can get more specific with your test commands:
119147

120148
```bash
121149
./gradlew clean build testAll --tests XhamsterRipperTest.testXhamster2Album
122150
./gradlew clean build -x test --warning-mode all
123151
```
124152

153+
To perform a clean rebuild, which is only necessary to see warnings for
154+
unchanged files or if you believe that the incremental build is interfering
155+
with the build picking up your changes, for example. That shouldn't be an issue
156+
for gradle, so you should check for easier explanations like whether you saved
157+
your changes. :)
158+
159+
```bash
160+
./gradlew clean
161+
```
162+
163+
To build ("assemble") the .jar without running the tests, which is useful for
164+
manual verification of functionality of a work in progress, run the following:
165+
166+
```bash
167+
./gradlew assemble
168+
```
169+
125170
The generated JAR (java archive) in build/libs will include all
126171
dependencies.
127172

0 commit comments

Comments
 (0)