当前位置:  开发笔记 > 编程语言 > 正文

Maven:如何使用deploy-file和custom wagon进行部署

如何解决《Maven:如何使用deploy-file和customwagon进行部署》经验,为你挑选了2个好方法。

我正在尝试使用自定义maven wagon扩展来将jar部署到我自己的存储库.我可以在settings.xml中以某种方式配置它识别要与特定货车一起使用的自定义URL方案,还是我必须始终修改pom文件以包含货车扩展?


使用deploy-file时,不需要基本pom或任何可用的pom.Settings.xml是唯一保证存在的地方,但我无法弄清楚如何使用它来定义扩展.



1> siddhadev..:

好的,好的,更正:您无法在定义的内部定义元素settings.xml.您可以激活配置文件settings.xml,但在您的配置文件中定义它base-pom.

对不起,我能想到的唯一其他方式(可能是你在寻找什么),就是直接复制扩展jar $M2_HOME/lib.所有$M2_HOME/lib/*.jar都放在类路径中,所以这几乎必须具有相同的效果.

然而,扩展更好,因为您可以更轻松地控制使用哪个版本的扩展(例如,通过base-pom).

好的,只需尝试复制扩展jar

    $M2_HOME/lib



2> void256..:

我不知道Brian Fox上面的评论是否在2013年仍然有效.但最后我不得不在我试图上传工件的目录中创建一个最小的pom.xml来启用wagon构建扩展.

我不得不将groupId,artifactId和version添加到pom.xml中,以便Maven不会抱怨,尽管我将它们提供给命令行上的deploy-file目标(我猜想deploy-file只关心命令行参数):

4.0.0
your-groupId
your-artifactId
your-version

  
    
      org.apache.maven.wagon
      wagon-ssh
      2.4
    
  


有了这个简单的"pom.xml",我就可以使用scp作为协议来执行deploy-file:

mvn deploy:deploy-file -Durl=scp://shell.sourceforge.net:/home/project-web/... -DrepositoryId=repoId -Dfile=my-file.jar -DgroupId=your-groupId -DartifactId=your-artifactId -Dversion=your-version -Dpackaging=jar

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有