Maven3 package时报 'version' contains an expression but should be a constant

父pom文件:java

<modelVersion>4.0.0</modelVersion>
<groupId>com.wey</groupId>
<artifactId>WEY</artifactId>
<version>${com.wey.version}</version>
<packaging>pom</packaging>
子Module
<modelVersion>4.0.0</modelVersion>
<groupId>com.wey</groupId>
<artifactId>WEY</artifactId>
<version>${com.wey.version}</version>
<packaging>pom</packaging>

package web工程时报 'version' contains an expression but should be a constant这个错误提示,这是由于Maven3 不容许出现version为很是量值的状况。web

那么就将版本号改为常量后能够正常打包:express

父pom文件:apache

<modelVersion>4.0.0</modelVersion>
<groupId>com.wey</groupId>
<artifactId>WEY</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>

子Moduleapp

<parent>
	<groupId>com.wey</groupId>
	<artifactId>WEY</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<relativePath>../WEY/pom.xml</relativePath>
</parent>
<artifactId>WEY.WebApp</artifactId>
<packaging>war</packaging>
<name>WEY.WebApp Maven Webapp</name>
<url>http://maven.apache.org</url>
若是更新版本号一个文件一个文件的去改太麻烦,能够用如下命令一次性更新版本号:
>mvn versions:set -DnewVersion=0.0.2-SNAPSHOT
>mvn versions:update-child-modules
更新的父及子Module的版本号都改为了0.0.2-SNAPSHOT.
<modelVersion>4.0.0</modelVersion>
<groupId>com.wey</groupId>
<artifactId>WEY</artifactId>
<version>0.0.2-SNAPSHOT</version>
<packaging>pom</packaging>


<parent>
	<groupId>com.wey</groupId>
	<artifactId>WEY</artifactId>
	<version>0.0.2-SNAPSHOT</version>
	<relativePath>../WEY/pom.xml</relativePath>
</parent>
<artifactId>WEY.WebApp</artifactId>
<packaging>war</packaging>
<name>WEY.WebApp Maven Webapp</name>
<url>http://maven.apache.org</url>

Maven还会生成一个pom.xml.versionsBackup的备份文件。maven

提交更新:url

>mvn versions:commitxml

相关文章
相关标签/搜索