如果您已经设置了指向Web文件夹的Web服务器,则部署自定义JAR的简单方法是使用deploy:deploy-fileMojo.如Maven Deploy插件的Usage页面中所述:
该
deploy:deploy-file魔咒主要用于文物部署于未通过的Maven构建.项目的开发团队可能会也可能不会为工件提供POM,在某些情况下,您可能希望将工件部署到内部远程存储库.deploy-file mojo提供涵盖所有这些用例的功能,并提供广泛的可配置性,以便即时生成POM.此外,您可以指定存储库使用的布局.deploy-file mojo的完整用法语句可以描述为:Run Code Online (Sandbox Code Playgroud)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]
只有3个第一个参数是强制性的(短版本).如果你想知道repositoryId是什么,Mojo的文档说:
要映射到
<id>下<server>部分的服务器标识settings.xml在大多数情况下,验证时需要此参数.默认值为:remote-repository.
换句话说,最简单的方法是在托管Web服务器的计算机上复制自定义JAR,并file://在指定URL时使用协议.无需额外设置.如果你想远程部署,那么scp://通常是首选协议(还有其他协议,但这个很容易设置).下面是一个使用scp的例子:
mvn deploy:deploy-file -DgroupId=my.group -DartifactId=myartifact -Dversion=1.0 \
-DgeneratePom=true \
-Dpackaging=jar \
-Dfile=custom.jar \
-DrepositoryId=some.id \
-Durl=scp://REMOTEMACHINE/PATH/TO/WEB_ROOT/maven2_repository
Run Code Online (Sandbox Code Playgroud)
实际上,使用Web服务器来托管您自己的Maven存储库是完全正常的,但初始化可能有点痛苦.解决此问题的一个解决方案是使用Maven代理(例如Nexus)而不仅仅是Maven存储库.但这超出了你的问题.
有关此问题的更多资源,请检查(即使实施解决方案有点过时,原则仍然有效):
| 归档时间: |
|
| 查看次数: |
10502 次 |
| 最近记录: |