contains an expression but should be a constant

contains an expression but should be a constant
强烈推介IDEA2021.1.3破解激活,IntelliJ IDEA 注册码,2021.1.3IDEA 激活码  

大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说contains an expression but should be a constant,希望能够帮助大家进步!!!

  • 父pom文件:
 
  1. <modelVersion>4.0.0</modelVersion>

  2. <groupId>com.wey</groupId>

  3. <artifactId>WEY</artifactId>

  4. <version>${com.wey.version}</version>

  5. <packaging>pom</packaging>

  • 子Module
 
  1. <modelVersion>4.0.0</modelVersion>

  2. <groupId>com.wey</groupId>

  3. <artifactId>WEY</artifactId>

  4. <version>${com.wey.version}</version>

  5. <packaging>pom</packaging>

  • package web工程时报 'version' contains an expression but should be a constant这个错误提示,这是因为Maven3 不允许出现version为非常量值的情况。

那么就将版本号改成常量后可以正常打包:

  • 父pom文件:
 
  1. <modelVersion>4.0.0</modelVersion>

  2. <groupId>com.wey</groupId>

  3. <artifactId>WEY</artifactId>

  4. <version>0.0.1-SNAPSHOT</version>

  5. <packaging>pom</packaging>

  • 子Module
 
  1. <parent>

  2. <groupId>com.wey</groupId>

  3. <artifactId>WEY</artifactId>

  4. <version>0.0.1-SNAPSHOT</version>

  5. <relativePath>../WEY/pom.xml</relativePath>

  6. </parent>

  7. <artifactId>WEY.WebApp</artifactId>

  8. <packaging>war</packaging>

  9. <name>WEY.WebApp Maven Webapp</name>

  10. <url>http://maven.apache.org</url>

  • 如果更新版本号一个文件一个文件的去改太麻烦,可以用以下命令一次性更新版本号:

>mvn versions:set -DnewVersion=0.0.2-SNAPSHOT

>mvn versions:update-child-modules

  • 更新的父及子Module的版本号都改成了0.0.2-SNAPSHOT.
 
  1. <modelVersion>4.0.0</modelVersion>

  2. <groupId>com.wey</groupId>

  3. <artifactId>WEY</artifactId>

  4. <version>0.0.2-SNAPSHOT</version>

  5. <packaging>pom</packaging>

  6.  
  7.  
  8. <parent>

  9. <groupId>com.wey</groupId>

  10. <artifactId>WEY</artifactId>

  11. <version>0.0.2-SNAPSHOT</version>

  12. <relativePath>../WEY/pom.xml</relativePath>

  13. </parent>

  14. <artifactId>WEY.WebApp</artifactId>

  15. <packaging>war</packaging>

  16. <name>WEY.WebApp Maven Webapp</name>

  17. <url>http://maven.apache.org</url>

  • Maven还会生成一个pom.xml.versionsBackup的备份文件。
  • 提交更新:

>mvn versions:commit

本文来源huayang183,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/18090

发表评论