错误:无法解析导入XXX
我在尝试从 Java 8 迁移时在 Java 11 中遇到了这个问题。
Parent Project X:
Project A:
Project Aa:
src/test/java:
MyTestA.java
pom.xml
pom.xml
Project B:
Project Ba:
src/test/java:
MyTestB.java
pom.xml
pom.xml
pom.xml
这里我尝试从 MyTestB.java 访问 MyTestA.java
我尝试过什么:
删除
<scope>
标签。所以现在在项目 Ba pom.xml
中,我声明了项目 A 的两个依赖项,一个带有 <type>jar</type>
,另一个带有 <type>test-jar</type>
,并且都没有声明。
在项目 A 和项目 Aa
pom.xml
中,"maven-jar-plugin"
的执行目标应同时指定 "jar"
和 "test-jar"
。
仍然面临同样的问题..
但是我可以访问项目 Aa 的 src/main/java 包中的类
工件的测试类不公开,只有
src/main
中的测试类公开。
为了实现你想要的,你可以在你的项目中添加另一个模块(比如说
Project C
),你将在两个测试类中放置你需要的公共代码。此代码将位于 src/main/java
。Project Aa
和 Project Ba
的测试依赖项。
Parent Project X:
Project A:
Project Aa:
src/test/java:
MyTestA.java <== import MyCommonTestCode
pom.xml <== depends Project C (scope : test)
pom.xml
Project B:
Project Ba:
src/test/java:
MyTestB.java <== import MyCommonTestCode
pom.xml <== depends Project C (scope : test)
pom.xml
Project C:
src/main/java:
MyCommonTestCode.java
pom.xml
pom.xml