${revision}
标签可以在pom.xml中所描述的被使用在这里。
具有以下目录结构:
fix
├── pom.xml
├── parent
│ └── pom.xml
└── example
└── pom.xml
pom.xml具有:
<project>
<groupId>intellij</groupId>
<artifactId>fix</artifactId>
<version>${revision}</version>
<properties>
<project.parent.basedir>parent</project.parent.basedir>
</properties>
<packaging>pom</packaging>
<modules>
<module>parent</module>
<module>example</module>
</modules>
<modelVersion>4.0.0</modelVersion>
</project>
parent / pom.xml具有:
<project>
<groupId>intellij</groupId>
<artifactId>parent</artifactId>
<properties>
<revision>1.0.0</revision>
</properties>
<parent>
<groupId>intellij</groupId>
<artifactId>fix</artifactId>
<version>${revision}</version>
</parent>
<packaging>pom</packaging>
<modelVersion>4.0.0</modelVersion>
</project>
还有example / pom.xml:
<project>
<groupId>example</groupId>
<artifactId>example</artifactId>
<parent>
<groupId>intellij</groupId>
<artifactId>parent</artifactId>
<version>${revision}</version>
<relativePath>../parent/pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
</project>
IntelliJ报告:
而mvn
在终端上解析得很好并且可以工作。
这会破坏IntelliJ中的许多内容。
我在IntelliJ 2019.2中尝试过
只是一个提示。如果mvn clean
对结构执行简单的命令,您将看到以下内容:
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] parent 1.0.0 ....................................... SUCCESS [ 0.146 s]
[INFO] example 1.0.0 ...................................... SUCCESS [ 0.003 s]
[INFO] fix ${revision} .................................... SUCCESS [ 0.002 s]
[INFO] ------------------------------------------------------------------------
这表明这里出了点问题...导致版本属性无法在根pom中解析....这就是IDEA IntelliJ告诉您出了问题的原因....根项目在最后一行,表明存在问题。
如果将修订版属性正确地移动到根项目(修订)中,则会看到以下内容:
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ example ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for fix 1.0.0:
[INFO]
[INFO] fix ................................................ SUCCESS [ 0.106 s]
[INFO] parent ............................................. SUCCESS [ 0.003 s]
[INFO] example ............................................ SUCCESS [ 0.002 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.255 s
[INFO] Finished at: 2020-01-28T20:56:22+01:00
[INFO] ------------------------------------------------------------------------
在此输出中,您会fix
在第一行看到正确的。
我强烈建议您正确更改结构,不要<relativePath>../parent/pom.xml</relativePath>
在example
项目中使用它,这表明您的目录结构不代表您在pom文件中创建的真实结构。
这将导致我在github上的示例项目中给定的结构:
https://github.com/khmarbaise/so-question-1
除此之外,请flatten-maven-plugin
按照文档中的说明将,添加到您的项目中,否则在使用mvn clean install
或的情况下会失败。mvn clean deploy
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句