7

我有一个 Maven 项目,它有一组库依赖项,这些依赖项不能通过任何 Maven 存储库获得。如何将这些库添加到 pom 中?我想这样做,所以当我运行“mvn eclipse:eclipse”时,它不会从 eclipse 类路径中删除这些库。

4

5 回答 5

8

您可以将其声明为具有system范围的依赖项。

<project>
...
 <dependencies>
   <dependency>
     <groupId>sun.jdk</groupId>
     <artifactId>tools</artifactId>
     <version>1.5.0</version>
     <scope>system</scope>
     <systemPath>${java.home}/../lib/tools.jar</systemPath>
   </dependency>
 </dependencies>
 ...
</project>
于 2010-03-19T17:10:58.563 回答
4

您有 3 个选项:

  • 通过将您的库添加到本地存储库install:install-file(显然,这是不可移植的,如果不这样做,您将无法在另一台机器上构建项目)。
  • 安装并运行像 Nexus、Archiva 或 Artifactory 这样的“企业存储库”,并通过deploy:deploy-file.
  • 如上一个答案中所述设置基于文件的存储库,并将您的库放在那里。

然后,像任何其他依赖项一样在您的 pom 中声明您的库。

于 2010-03-19T17:12:16.737 回答
1

您可以将它们包含在您的项目中的一个子目录(可能是 lib/)中。您还可以提供 .bat 和/或 .sh 文件,其中包含对每个项目成员(或服务器环境)所需的 maven-install-plugin 的所有适当调用,以将这些 jar 添加到本地 repo。

这种方法允许新的项目成员快速启动和运行,而无需花费数小时为您的项目或团队设置新的公共存储库。

于 2010-03-19T17:12:23.633 回答
0

您不能“将它们添加到 pom”中。你必须把它们放在一些回购中。您可以按照错误消息的建议,使用 maven-install-plugin 将它们放入本地存储库中。或者,您可以将它们部署在 Nexus 或类似的本地副本中。

于 2010-03-19T16:51:10.470 回答
0

recently I created a small UI Util to install libraries to you local repository. It works the same way as install:install-file.

https://github.com/escv/maven-install-ui

于 2014-07-02T13:34:26.077 回答