在使用gradle编译包含3个模块的以下项目时,我遇到了实现依赖性的编译问题:
测试impl
测试库
我的测试
我的错误:
/Users/igor/projects/my-test/src/main/java/MyTest.java:4: error: cannot access TestImpl
lib.foo("");
^
class file for TestImpl not found
它是在我更改时编译的 implemention
至 api
或者如果我重新命名 foo
中的方法 TestLib
班级。
gradle 6.0.1、java 1.8.0271-b09、osx
它看起来像虫子吗?去哪里报到?
所有build.gradle文件:
模块测试实现 build.gradle
:
apply plugin: 'java-library'
模块测试库 build.gradle
:
apply plugin: 'java-library'
dependencies {
implementation project(':test-impl')
}
模块我的测试 build.gradle
:
apply plugin: 'java-library'
dependencies {
api project(':test-lib')
}
所有源代码: TestImpl.java
在测试impl模块中:
public class TestImpl {
}
``` `TestLib.java` 在测试库模块中:
public class TestLib {
public void foo(String s) {
}
private void foo(TestImpl impl) {
}
}
``` MyTest.java
在我的测试模块中:
public class MyTest {
public void test() {
TestLib lib = new TestLib();
lib.foo("");
}
}
暂无答案!
目前还没有任何答案,快来回答吧!