我需要在我的 maven 项目中添加大约 15 个 jar,但它在远程和中央存储库中都不可用。
但是,我已经实现了如下,
- 在我的项目路径(\src\lib) 中添加了jar
如下更改 pom,
<dependency> <groupId>XXX</groupId> <artifactId>YYY</artifactId> <scope>system</scope> <version>8.1</version> <systemPath>${basedir}\src\lib\YYY.jar</systemPath> </dependency>
我的问题:
我是否需要像上面那样对所有 15 个 jar 分别重复它,或者我们有任何其他方法来绑定(bind)这些 jar 并将其作为一个依赖路径?
同样的事情在这里讨论Maven: System dependency pointing to multiple jars .但我想知道我是否能得到更好的/新的想法,因为它已经讨论了 5 年了
Maven版本:3.3.9
最佳答案
我认为你不应该使用 systemPath
相反,请考虑将 jars 安装到您的本地存储库中,如下所述:https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html
Maven 允许您通过手动调用在您的存储库中添加一个库:
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>
这样做,您的 jars 将安装在您的 .m2 存储库中,并将作为模块中的其他依赖项提供
编辑: 我们可以补充一点,在与队友合作时,我们通常使用我们自己的存储库管理器,如 Nexus ( http://www.sonatype.org/nexus/ ) 或 Artifactory ( https://www.jfrog.com/open-source/ )
关于java - Maven 外部依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34721896/