Maven:如何在 Eclipse 中包含 jar,而这些 jar 在存储库中不可用?

2022-09-04 19:42:49

我已将 JAR 复制到 .
我使用日食。如果我将 jar 逐个添加到 Project-> Java Build Path-> Add jar 中,那么我执行 Project-> Maven-> Update Project Configuration,它们将被 Maven 删除。Eclipse显示错误,其中包含“ xxx无法解决”。src\main\webapp\WEB-INF\lib

Env:
Eclipse Java EE IDE for Web Developers.
Version: Indigo Service Release 1
Build id: 20110916-0149

m2e - Maven Integration for Eclipse 1.0.100.20110804-1717

注意:我不想创建自己的 Maven 存储库。它只会使用一次。
我应该如何继续?


答案 1

并非所有库都可以在公共 Maven 存储库中找到,例如您自己的库或专有库。无论如何,首先你可以搜索Maven Repository,也许其中一些就在那里。

如果它们真的不存在,并且您不想安装Nexus或Artifatory则可以选择以下两种方法之一:

  • 在本地存储库缓存中安装 jar,无需创建特殊存储库。请参阅有关 mkyong 的说明

  • 另一种方法是使用系统依赖关系,你只需在文件系统中放置一个路径来访问Jar。这是一种不太推荐的方法,但如果你真的想要,它会起作用。这是官方文档


答案 2

将此添加为系统依赖项


如果你想将这个(这使用jquantlib作为例子)添加到maven本地存储库使用:

mvn install:install-file -Dfile=./jquantlib-0.2.4.jar -DgroupId=org.jquantlib -DartifactId=jquantlib -Dversion=0.2.4 -Dpackaging=jar

为此,我使用批处理文件

@echo off

cd lib

CMD /C "mvn install:install-file -Dfile=./jquantlib-0.2.4.jar -DgroupId=org.jquantlib -DartifactId=jquantlib -Dversion=0.2.4 -Dpackaging=jar"
CMD /C "mvn install:install-file -Dfile=./jquantlib-helpers-0.2.4.jar -DgroupId=org.jquantlib -DartifactId=jquantlib-helpers -Dversion=0.2.4 -Dpackaging=jar"
CMD /C "mvn install:install-file -Dfile=./jquantlib-samples-0.2.4-ubber.jar -DgroupId=org.jquantlib -DartifactId=jquantlib-ubber -Dversion=0.2.4 -Dpackaging=jar"
CMD /C "mvn install:install-file -Dfile=./jquantlib-samples-0.2.4.jar -DgroupId=org.jquantlib -DartifactId=jquantlib-samples -Dversion=0.2.4 -Dpackaging=jar"

CMD /C "mvn install:install-file -Dfile=./ta-lib-0.4.0.jar -DgroupId=com.tictactec -DartifactId=ta-lib -Dversion=0.4.0 -Dpackaging=jar"

您可以在其他系统上使用类似的脚本文件。


推荐