【发布时间】:2019-02-16 05:08:22
【问题描述】:
我对 gradle 有疑问。 我的项目它由几个模块(osgi)组成。 当我运行命令时: ./gradlew 清洁组装 Gradle 为每个模块生成 jar 文件,但我想使用以下命令: ./gradlew clean compileJava 加快工作速度,但使用此命令 gradle 不会为两个模块生成 jar 文件。 可能是什么原因?
【问题讨论】:
标签: java gradle jar compilation
我对 gradle 有疑问。 我的项目它由几个模块(osgi)组成。 当我运行命令时: ./gradlew 清洁组装 Gradle 为每个模块生成 jar 文件,但我想使用以下命令: ./gradlew clean compileJava 加快工作速度,但使用此命令 gradle 不会为两个模块生成 jar 文件。 可能是什么原因?
【问题讨论】:
标签: java gradle jar compilation
你可以从this documentationthis documentation的图中图1中看到Java插件任务之间的依赖关系:
assemble 任务依赖于jar 任务:这就是为什么当你执行gradlew assemble 时Gradle 将为每个模块构建jarcompileJava 任务没有依赖关系:这个任务只会将你的java 源文件编译成.class 文件。这就是为什么如果你只执行gradlew clean compileJava就不会产生jar。奇怪的是你说你在调用 gradle compileJave 时得到了 jar :Gradle 通常不应该产生这些 jar。
【讨论】: