在我们的依赖项中添加外部jar

时间:2013-08-06 13:00:23

标签: java maven-2 maven-plugin maven-assembly-plugin

有一个jar文件让我们说“abc.jar”maven依赖项不存在(即通过使用自己类的java命令创建一个jar)。我想将此jar添加为maven依赖项,以便在构建时它将自动复制lib文件夹中的jar,就像其他maven依赖项一样。我该怎么办请帮忙。

3 个答案:

答案 0 :(得分:1)

将其添加为系统范围的依赖项。 See the docs here

但是,不是将其作为系统依赖项添加,而是将jar本身编组,然后您可以构建并将其安装到依赖关系管理系统中。

另请参阅此问题:Can I add jars to maven 2 build classpath without installing them?

答案 1 :(得分: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中获取工件。

希望这有帮助!

答案 2 :(得分:0)

通常通过查看存储库来解决正常的maven依赖关系。因此,您必须将JAR文件放入存储库。

您可以安装到您的本地存储库中。看看install plugin。安装文件目标是你的朋友。

如果其他开发人员也需要这个JAR(因为他们正在使用同一个项目),他们也需要在本地安装它,或者 - 更好 - 你部署到远程存储库。看看deploy plugin。这里的部署文件目标是你的朋友。要部署工件,您需要一个存储库管理器,如NexusArtifactory

但是,依赖关系也可能具有系统范围(请查看其他答案)。