2011-10-28 30 views
1

在这里,我的问题的故事:更改名称的远程仓库之前上传

我要上传与部署命令一个pom.xml一个罐子,但我想上传的罐子不包含在这个名字中的版本号。

例如,pom.xml中的jogl.all.jar:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 

<modelVersion>4.0.0</modelVersion> 

<groupId>org.jogamp.jogl</groupId> 
<artifactId>jogl.all</artifactId> 
<version>2.0-b526-20111018</version> 
<packaging>jar</packaging> 
<name>Jogl</name> 
</project> 

我的部署CMD:

mvn deploy:deploy-file 
    -Durl=http://maven.iscpif.fr/thirdparty/ 
    -DrepositoryId=maven.iscpif.fr 
    -DgroupId=org.jogamp.jogl 
    -DartifactId=jogl.all 
    -Dversion=2.0-b526-20111018 
    -Dfile=./jogl.all.jar 
    -DpomFile=./pom-jogl-all.xml 
    -Dpackaging=jar 

部署的罐子在这里等于:jogl.all-2.0-b526-2011108.jar

但是,当我把这种依赖我想行家尝试下载一个罐子这个名字:jogl.all.jar

谢谢您的建议:)

SR。

回答

3

如果要部署到远程仓库你不能改变工件名称。这将打破maven的工作方式。

参考@帕斯卡commentthis related SO discussion为好。

,同时通过使用属性outputFileNameMapping使用maven组件,插件,包括他们在分布可以改变依赖jar的名称。下面的内容,如:

<dependencySets> 
     <dependencySet> 
      <outputDirectory>/webapps/myapp/WEB-INF/lib</outputDirectory> 
      <excludes> 
       <exclude>${project.groupId}:${project.artifactId}</exclude> 
      </excludes> 
      <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping> 
     </dependencySet> 
    </dependencySets> 
+0

好,谢谢,你有我如何能将它们添加到我的罐子组装插件之前改变罐子的名称的想法? – reyman64

+0

@ reyman64。参考更新的答案 – Raghuram