有一个 jar 文件可以说“abc.jar”,它不存在 maven 依赖项(即使用自己的类的 java 命令创建了一个 jar)。我想将此 jar 添加为 maven 依赖项,以便在构建时它会像其他 maven 依赖项一样自动将该 jar 复制到 lib 文件夹中。我会怎么做。请帮忙 。
问问题
75 次
3 回答
1
将其添加为具有系统范围的依赖项。请参阅此处的文档。
但是,与其将其添加为系统依赖项,不如将 jar 本身 mavenize 更好,然后您可以将其构建并安装到您的依赖项管理系统中。
另外,请参阅这个问题:我可以在不安装它们的情况下将 jars 添加到 maven 2 build classpath 吗?
于 2013-08-06T13:09:56.803 回答
0
您可以在项目的 POM 文件systemPath
中的标记中使用该属性。dependency
在您的 pom.xml 中,使用以下代码片段对应于abc.jar
:
<dependencies>
<!-- Other dependencies -->
<dependency>
<groupId>abc</groupId>
<artifactId>x</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>{path_to_abc.jar}</systemPath>
</dependency>
</dependencies>
与此工件对应的scope
参数必须设置为system
, 以便从指定的 中拾取工件systemPath
。
希望这可以帮助!
于 2013-08-06T13:10:59.343 回答
0
一个正常的 Maven 依赖总是通过查看存储库来解决的。因此,您必须将 JAR 文件放入存储库中。
您可以将JAR安装到本地存储库中。看看安装插件。install-file 目标是您的朋友。
如果其他开发人员也需要这个 JAR(因为他们正在处理同一个项目),他们要么也需要在本地安装它,或者 - 更好 - 你将 JAR部署到远程存储库。看看部署插件。这里的 deploy-file 目标是你的朋友。要部署工件,您需要像Nexus或Artifactory这样的存储库管理器。
但是,依赖项也可能具有系统范围(查看其他答案)。
于 2013-08-06T13:14:21.270 回答