我有一个项目有多个模块,比如实用程序和核心。
settings.gradle
include 'utils', 'core'
core/build.gradle
jar {
destinationDir = file(LIB_DIR)
manifest {
attributes(
'Main-Class': 'com.cohesity.spotlight.Main'
)
}
}
dependencies {
compile files("$buildDir/libs/utils.jar")
}
核心.jar包含来自 utils.jar 的类。为什么会这样?
我想我知道这个!(我自己也对此感到困惑(
我猜utils.jar
里面有 java 源文件。默认情况下,javac
还将编译这些"隐式"源以及来自src/main/java
的源。若要停止此操作,需要将-implicit:none
传递给编译器。
例如:
tasks.withType(JavaCompile) {
options.compilerArgs << '-implicit:none'
}
请参阅 https://docs.oracle.com/javase/7/docs/technotes/tools/solaris/javac.html(搜索"隐式"(