1

我从 Github 克隆了一个开源库项目,我想将其用于我自己的 Java 项目。该库依赖于其他一些在任何公共存储库中都找不到的 jar。这会导致mvn package失败:

[ERROR] Failed to execute goal on project commons-gdx-core: 
Could not resolve dependencies for project 
com.gemserk.commons.gdx:commons-gdx-core:jar:0.0.11-SNAPSHOT: 
The following artifacts could not be resolved: 
com.badlogic.gdx:gdx:jar:0.9.8-SNAPSHOT, 
com.gemserk.animation4j:animation4j-core:jar:0.2.2-SNAPSHOT,
com.gemserk.vecmath:vecmath:jar:1.5.3-GEMSERK: 
Could not find artifact com.badlogic.gdx:gdx:jar:0.9.8-SNAPSHOT -> [Help 1]

我想我可以从其他来源获得这些罐子,但我不知道如何告诉 maven 在哪里寻找它们。

4

3 回答 3

2

使用存储库和存储库标签指向您的 pom 文件中的私有存储库或以相同的方式更新您的 settings.xml。一旦你告诉它去哪里看,Maven 就会下载这些工件。

于 2013-03-28T18:56:59.833 回答
2

例如,我们有 Oracle JDBC 驱动程序。您必须将其安装到本地 Maven 存储库中。

  1. 将您的库下载到本地文件夹(即:Path/to/private/library.jar)
  2. mvn install:install-file -Dfile= -DgroupId= -DartifactId= -Dversion= -Dpackaging=jar

或者,更高级的方法是,如果您有一个 Maven 存储库(如 Sonatype Nexus),您可以将它部署在存储库上并将其映射到您的项目中。但是,我认为您需要第一个选项。

于 2013-03-28T19:06:51.423 回答
1

alast 和 Chris 的回答都是正确的。但是如果你改变你的计算机或清理你的本地存储库,你的项目仍然无法编译。我建议使用系统依赖项并在 git 版本控制下添加 jar。这是一个例子。

于 2013-03-29T02:00:42.863 回答