Gradle Operations: Difference between revisions
Jump to navigation
Jump to search
(19 intermediate revisions by the same user not shown) | |||
Line 8: | Line 8: | ||
=Operations= | =Operations= | ||
==Debug a Gradle Build== | ==Debug a Gradle Build== | ||
===IDE Configuration=== | {{External|https://docs.gradle.org/current/userguide/troubleshooting.html#sec:troubleshooting_build_logic}} | ||
===External Gradle Process=== | |||
====Gradle Process Instrumentation==== | |||
Use [[Gradle_System_Properties#org.gradle.debug|-Dorg.gradle.debug=true]]. Experimented with Gradle 6.8.3. | |||
<syntaxhighlight lang='bash'> | |||
./gradlew -Dorg.gradle.debug=true --no-daemon <task-to-debug> | |||
</syntaxhighlight> | |||
Even if [[Gradle_Command_Line#--no-daemon|--no-daemon]] was specified, Gradle will issue a message similar to: | |||
<syntaxhighlight lang='text'> | |||
To honour the JVM settings for this build a single-use Daemon process will be forked. See https://docs.gradle.org/6.8.3/userguide/gradle_daemon.html#sec:disabling_the_daemon. | |||
> Starting Daemon | |||
</syntaxhighlight> | |||
and will stop there waiting for the debugger to attach. The JVM will listen on 5005. | |||
If you need to use a Gradle daemon, the daemon JVM can also be instrumented to start in debug mode: | |||
{{Internal|Gradle_System_Properties#Attaching_a_Debugger_to_a_Gradle_Daemon|Gradle System Properties | org.gradle.jvmargs | Attaching a Debugger to a Gradle Daemon}} | |||
====IDE Configuration==== | |||
{{External|https://medium.com/dan-on-coding/debugging-gradle-source-code-in-intellij-e1224bec9b6e}} | |||
<font color=darkgray> | <font color=darkgray> | ||
TODO: [[IntelliJ_Gradle_Support#Configuring_Gradle_Sources|IntelliJ Gradle Support | Configuring Gradle Sources]]</font> | |||
* Get sources from GitHub. "Subproject" sources are available in subprojects/bootstrap/src/main/java, subprojects/launcher/src/main/java, etc. | * Get sources from GitHub. "Subproject" sources are available in subprojects/bootstrap/src/main/java, subprojects/launcher/src/main/java, etc. | ||
* Script that collects sources and builds a consolidated source JAR file is available here: | |||
** https://github.com/ovidiuf/shell-tools/blob/master/gradle/package-gradle-sources | |||
** https://github.com/ovidiuf/playground/blob/master/gradle/tools/build-source-jar | |||
* Attach them to External Libraries → gradle-api-6.2.2.jar → Right click → Open Library Settings → Right click → Edit → + | * Attach them to External Libraries → gradle-api-6.2.2.jar → Right click → Open Library Settings → Right click → Edit → + | ||
</font> | </font> | ||
=== | ===Gradle runs in IntelliJ=== | ||
===Gradle Daemon | Edit configurations → + → Gradle | ||
==Debug a Test Executed with Gradle== | |||
{{Internal|Debugging Gradle Tests|Debugging Gradle Tests}} | |||
==Gradle Daemon Operations== | |||
{{Internal|Gradle Daemon Operations|Gradle Daemon Operations}} | |||
=TODEPLETE= | =TODEPLETE= | ||
{{Internal|Gradle Operations TODEPLETE|Operations TODEPLETE}} | {{Internal|Gradle Operations TODEPLETE|Operations TODEPLETE}} |
Latest revision as of 22:09, 1 June 2021
Internal
Installation
Command Line
Operations
Debug a Gradle Build
External Gradle Process
Gradle Process Instrumentation
Use -Dorg.gradle.debug=true. Experimented with Gradle 6.8.3.
./gradlew -Dorg.gradle.debug=true --no-daemon <task-to-debug>
Even if --no-daemon was specified, Gradle will issue a message similar to:
To honour the JVM settings for this build a single-use Daemon process will be forked. See https://docs.gradle.org/6.8.3/userguide/gradle_daemon.html#sec:disabling_the_daemon.
> Starting Daemon
and will stop there waiting for the debugger to attach. The JVM will listen on 5005.
If you need to use a Gradle daemon, the daemon JVM can also be instrumented to start in debug mode:
IDE Configuration
TODO: IntelliJ Gradle Support | Configuring Gradle Sources
- Get sources from GitHub. "Subproject" sources are available in subprojects/bootstrap/src/main/java, subprojects/launcher/src/main/java, etc.
- Script that collects sources and builds a consolidated source JAR file is available here:
- Attach them to External Libraries → gradle-api-6.2.2.jar → Right click → Open Library Settings → Right click → Edit → +
Gradle runs in IntelliJ
Edit configurations → + → Gradle