我有第三部分jar文件远远不存在于项目目录中的文件,我想在执行mvn install时将这个jar添加到本地存储库中,我当前的代码用于执行该操作
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<groupId>myJar1.0</groupId>
<artifactId>myJar1.0</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<file>myJar1.0.jar</file>
</configuration>
</execution>
</executions>
</plugin>
答案 0 :(得分:5)
实际上它并不那么复杂。
有两种情况需要发出Maven的命令,手动将jar包含到Maven本地存储库中。
<强>步骤:
把你的罐放在某处,让我们假设它位于c:\
:
mvn install:install-file -Dfile=c:\myJar{version}.jar
-DgroupId=YOUR_GROUP -DartifactId=myJar -Dversion={version} -Dpackaging=jar
现在,“myJar”jar被复制到Maven本地存储库。
安装完成后,只需在pom.xml中声明myJar
坐标。
<dependency>
<groupId>YOUR_GROUP</groupId>
<artifactId>myJar</artifactId>
<version>{version}</version>
</dependency>
构建它,现在“myJar” jar能够从您的Maven本地存储库中检索。
注意:此示例基于another example,我建议您阅读以获取更多信息。
答案 1 :(得分:4)
使用存储库管理器是最佳解决方案。但是,这是一个可以完全通过pom.xml
配置设置的解决方案(无需开发人员干预):
<repositories>
<repository>
<id>project-local-repo</id>
<url>file://${project.basedir}/src/lib/</url>
</repository>
</repositories>
将您的库移动/重命名为$ {project.basedir} /src/lib/some-group-name/myJar-1.0.jar
<dependency>
<groupId>some-group-name</groupId>
<artifactId>myJar</artifactId>
<version>1.0</version>
</dependency>
每次构建时都会获取依赖项。 我在这里写了一个类似的答案:running Spring Boot for REST