我的项目中有一个带有一些外部 jar 的文件夹 lib。我正在使用 maven-install-plugin 将这些 jar 添加到我的本地存储库中。但是,我需要为要安装的每个 jar 创建单独的配置。有没有办法可以将 lib 文件夹中的所有 jar 复制到本地存储库中。
问问题
3361 次
2 回答
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.xmlsystemPath
的标签中指定 adependency
<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>
于 2012-08-24T07:33:14.703 回答
1
您需要特别提供这些文件的 groupId、artifactId 和版本,因为这些是 Maven 坐标以区分 Maven 中的工件。如果您有一个 lib 文件夹,最好开始使用存储库管理器并将它们安装到存储库管理器中一次,然后您可以将它们用作通常的依赖项。
于 2012-08-24T09:06:04.557 回答