0
故事: 我最近發現,在項目設置jar.enabled = false
多項目搖籃項目將停止從能指B類項目在同一個項目的-功能通過爲什麼「jar.enabled = false」會影響Gradle中的依賴關係?
dependencies {
compile project(':b-features')
}
B-功能問題: 爲什麼jar.enabled = false
停止項目A成功引用項目B?
附加信息:
根項目的build.gradle:
group 'gradle.studies'
apply plugin: 'java'
...
settings.gradle根項目:
rootProject.name = 'multi-project-reference'
include 'a-features'
include 'b-features'
的build.gradle項目a-features
的:
group 'gradle.studies'
apply plugin: 'java'
...
dependencies {
compile project(':b-features')
}
...
的build.gradle項目b-features
group 'gradle.studies'
apply plugin: 'java'
jar.enabled = false
...
一類在a-features
項目:
package outerproject;
import innerproject.B;
public class A {
public static void main(String[] args) {
B b = new B();
System.out.println(b.getMsg());
}
}
B類中b-features
項目:
package innerproject;
public class B {
public B() {
this.msg = "Hello World";
}
private String msg;
public String getMsg() {
return msg;
}
//...
}
錯誤:
14:27:50: Executing external task 'build'...
:compileJava NO-SOURCE :processResources NO-SOURCE :classes UP-TO-DATE
:jar UP-TO-DATE :assemble UP-TO-DATE :compileTestJava NO-SOURCE
:processTestResources NO-SOURCE :testClasses UP-TO-DATE :test
NO-SOURCE :check UP-TO-DATE :build UP-TO-DATE :b-features:compileJava
UP-TO-DATE :b-features:processResources NO-SOURCE :b-features:classes
UP-TO-DATE :b-features:jar SKIPPED
/home/nikita/IdeaProjects/multi-project-reference/a-features/src/main/java/outerproject/A.java:3:
error: package innerproject does not exist import innerproject.B;
^/home/nikita/IdeaProjects/multi-project-reference/a-features/src/main/java/outerproject/A.java:7:
error: cannot find symbol
B b = new B();
^ symbol: class B location: class A /home/nikita/IdeaProjects/multi-project-reference/a-features/src/main/java/outerproject/A.java:7:
error: cannot find symbol
B b = new B();
^ symbol: class B location: class A 3 errors :a-features:compileJava FAILED
FAILURE: Build failed with an exception.