我的项目中有一个带有一些外部jar的文件夹lib。我正在使用maven-install-plugin将这些罐子添加到我的本地存储库中。但是,我需要为每个要安装的jar创建一个单独的配置。有没有办法可以将lib文件夹中的所有jar文件复制到本地存储库。
答案 0 :(得分:2)
如果lib目录的内容与maven存储库中的目录结构匹配,即:
/lib/{groupid1}/{groupid2}/{artifactid}/{version}/{artifactid}-{version}.jar
例如:
/lib/commons-lang/commons-lang/2.6/commons-lang-2.6.jar
您只需将整个目录复制到~/.m2/repository
目录
cp -R lib/* ~/.m2/repository
如果没有,那么你必须手动逐个安装它们,因为Maven无法完全从文件名中找出组ID的内容。
另一种选择是根本不将它们放入本地存储库,而是在pom.xml中的systemPath
标记中指定dependency
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.0.4</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/commons-logging-1.0.4.jar</systemPath>
</dependency>
答案 1 :(得分:1)
你需要特别给出groupId,artifactId和那些文件的版本,因为这些是Maven坐标来区分Maven中的工件。 如果您有一个lib文件夹,那么最好开始使用存储库管理器并将它们安装到存储库管理器中,之后您可以将它们用作通常的依赖项。