我们有一些单元测试会失败,除非您的 $JAVA_HOME/jre/lib/security 文件夹中有两个 jar,local_policy.jar 和 US_export_policy.jar。我应该看看我们是否可以将它们放在项目文件夹中,然后告诉 Maven 在构建时使用它们(“mvn install”)。也许有依赖标签之类的东西?是的,我知道每个人都应该在他们的 $JAVA_HOME 中安装这些,但这是我被要求研究的任务。
问问题
1330 次
2 回答
1
您说的是 Maven 依赖范围。文档在这里。你可以说 Maven 使用一些库只是为了使用“测试”范围进行测试。
于 2012-10-10T05:44:35.020 回答
-1
您可以将它们添加为Maven systemPath 依赖项。
系统路径
仅当依赖范围是系统时才使用。否则,如果设置了此元素,则构建将失败。路径必须是绝对的,所以建议使用一个属性来指定机器特定的路径(下面有更多的属性),比如${java.home}/lib。由于假定系统范围依赖项是先验安装的,因此 Maven 不会检查项目的存储库,而是检查以确保文件存在。如果没有,Maven 将无法构建并建议您手动下载并安装它。
<dependencies>
<dependency>
<!-- The groupId can be anything. Use your own groupId for example -->
<groupId>anything</groupId>
<artifactId>local_policy</artifactId>
<!-- The version can be anything. Use the version of Java for example -->
<version>7.0</version>
<systemPath>${java.home}/lib/security/local_policy.jar</systemPath>
<scope>system</scope>
</dependency>
<dependency>
<!-- The groupId can be anything. Use your own groupId for example -->
<groupId>anything</groupId>
<artifactId>US_export_policy</artifactId>
<!-- The version can be anything. Use the version of Java for example -->
<version>7.0</version>
<systemPath>${java.home}/lib/security/US_export_policy.jar</systemPath>
<scope>system</scope>
</dependency>
</dependencies>
于 2012-10-10T08:54:47.370 回答