我在 Netbeans 7.1 IDE 中有一个 Maven 项目。
我想为 Dependencies
添加相同的依赖项和 Test Dependencies
.
添加到一个中会将其从另一个中删除。
复制 pom.xml 中的依赖项并将其包含在其中之一中:
<scope>test</scope>
..也不起作用。
帮助!
更多详情:
假设我有项目
MyProject
和 MyDependency
.MyProject
包含 MyDependency
作为默认范围(即 compile
范围)依赖项:<dependencies>
<dependency>
<groupId>my.group.id</groupId>
<artifactId>AnArtifactId</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
MyProject
在 Source Packages
中包含几个类文件夹(即 MyProject/src/main/...
),其中引用了 MyDependency
中的类来源包。这些工作完美; Netbeans 没有显示红色错误标志,并且这些类编译成功。MyProject
在 Test Packages
中包含几个类文件夹(即 MyProject/src/test/...
),其中引用了 MyDependency
中的类测试 包。 Netbeans 在 MyProject
中显示红色错误标志对于这些引用。MyDependency
已使用 mvn clean install -DskipTests
清理、构建并存储在本地 Maven 存储库中.为 MyProject
运行相同的命令仅在测试类中导致错误;非测试类编译良好。
最佳答案
我发现解决方案是复制 pom 依赖项,如下所示:
<dependencies>
<dependency>
<groupId>my.group.id</groupId>
<artifactId>AnArtifactId</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>my.group.id</groupId>
<artifactId>AnArtifactId</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>test</scope>
<type>test-jar</type>
</dependency>
</dependencies>
仅指定
<scope>test</scope>
表示包含 MyDependency
源包的 jar应该用作 MyProject
的测试包的依赖项.但是,通过指定
<type>test-jar</type>
MyDependency
的测试 jar(即包含测试包的 jar)用作 MyProject
的测试包的依赖项.
关于Netbeans 中的 Maven 项目 : How to add dependency to both 'Dependencies' and 'Test Dependencies' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9283681/