我是由客户提供的项目,该项目在他们提供的战争档案中具有许多依赖关系。我已将依赖关系添加到pom.xml:
<dependency>
<groupId>com.oragle.oipa</groupId>
<artifactId>PASJava</artifactId>
<version>10.2.0.25</version>
<type>war</type>
</dependency>
,但很明显,由于我物理上有文件,因此无法自动安装它们。我该怎么做才能让Maven识别他们的位置并为我设置它们?
如果战争与pom.xml无关,则应该" mavenize"它能够使用它是另一个Maven项目中的Maven依赖性。
1)您可以查看Maven安装插件的install-file
目标。
它允许生成和部署POM在您的本地存储库中。
https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html
在您的示例中,您可以以这种方式生成并安装战争伪像:
mvn install:install-file -Dfile=locationOfYourWarFile -DgroupId=com.oragle.oipa
-DartifactId=PASJava -Dversion=10.2.0.25 -Dpackaging=war
2)您还可以查看Maven部署插件的deploy-file
目标。
它允许在远程存储库中生成和部署POM。如果其他用户需要战争作为Maven依赖性,则可能会很有用。
http://maven.apache.org/plugins/maven-deploy-plugin/usage.html
这是文档中的一个示例:
mvn deploy:deploy-file -Durl=file://C:m2-repo
-DrepositoryId=some.id
-Dfile=your-artifact-1.0.jar
[-DpomFile=your-pom.xml]
[-DgroupId=org.some.group]
[-DartifactId=your-artifact]
[-Dversion=1.0]
[-Dpackaging=jar]
[-Dclassifier=test]
[-DgeneratePom=true]
[-DgeneratePom.description="My Project Description"]
[-DrepositoryLayout=legacy]
[-DuniqueVersion=false]