Java Gradle试图编译JAR的源代码

Java Gradle试图编译JAR的源代码,java,gradle,Java,Gradle,在我的项目中,我有一些由我的公司创建的java源代码和包含源代码的依赖JAR。问题是命令compileJava试图同时编译jars源代码。如何避免这种情况?我只想编译我的源代码,而不是jars的源代码 [更新] 下面是一个示例,它看起来如何: apply plugin: 'java' tasks.withType(JavaCompile) { options.compilerArgs = ["-implicit:none"] // this doesn't work //opt

在我的项目中,我有一些由我的公司创建的java源代码和包含源代码的依赖JAR。问题是命令compileJava试图同时编译jars源代码。如何避免这种情况?我只想编译我的源代码,而不是jars的源代码

[更新]

下面是一个示例,它看起来如何:

apply plugin: 'java'

tasks.withType(JavaCompile) {
    options.compilerArgs = ["-implicit:none"] // this doesn't work
    //options.compilerArgs << "-implicit:none" // this one also
}

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.company:myLib:1.0'
}

myLib包含由gradle编译的java源代码,但它们不应该包含。

gradle只为具有1个源代码和2个应用java插件的模块或项目编译源代码

如果要禁用编译或创建特定项目的JAR,可以使用如下语法:

project("Project123") { 
    compileJava.enabled = false
    //AND / OR
    jar.enabled = false
}
编辑

但是,如果要从外部源(如ivy)提取依赖项,可以尝试包括依赖项的类型:

compile 'myLib:myLib:1.0:jar'

您所描述的是Java编译器的标准行为,可以按照与命令行编译器相同的方式关闭:

tasks.withType(JavaCompile) {
    options.compilerArgs = ["-implicit:none"]
}

我也有同样的问题——设置一个空的源路径可以解决这个问题

tasks.withTypeJavaCompile{ options.compilerArgs+=[-sourcepath,] }

我很好奇为什么——暗示:没有一个不起作用,但不足以进一步调查,至少现在不


来源:Peter在中的回答。

您能提供一些有关gradle脚本的详细信息吗?您的依赖项应该包括您需要jar这一事实。