我从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在哪里寻找它们。
答案 0 :(得分:2)
使用存储库和存储库标记指向pom文件中的私有存储库,或以相同的方式更新settings.xml。一旦你告诉它看哪里,Maven就会下载这些文物。
答案 1 :(得分:2)
例如,我们有Oracle JDBC驱动程序。您必须将其安装到本地maven存储库中。
或者,更高级的方法,如果您有Maven存储库(如Sonatype Nexus),您可以将其部署在存储库中并将其映射到您的项目中。但是,我认为你需要第一个选择。
答案 2 :(得分:1)
来自apast和Chris的答案都是正确的。但是,如果您更改计算机或清理本地存储库,则仍无法编译项目。我建议使用系统依赖项并在git版本控制下添加jar。 Here's一个例子。