是否可以获得主要版本(<Major>.<Minor>.<Patch>
)project.version
?
例如,如果我的版本是1.3.4
,我想1
稍后在同一个 pom.xml 的配置中使用它
就像是:
<configuration>
<name>project_name.${project.version:major}</name>
</configuration>
如果没有,有什么替代方案?
是否可以获得主要版本(<Major>.<Minor>.<Patch>
)project.version
?
例如,如果我的版本是1.3.4
,我想1
稍后在同一个 pom.xml 的配置中使用它
就像是:
<configuration>
<name>project_name.${project.version:major}</name>
</configuration>
如果没有,有什么替代方案?
找到了。build-helper-maven-plugin能够解析出版本的组件。
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<phase>initialize</phase>
<id>parse-version</id>
<goals>
<goal>parse-version</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<echo>[version] ${project.version}</echo>
<echo>[majorVersion] ${parsedVersion.majorVersion}</echo>
</tasks>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
这适用于 Maven 3.3.9:
${project.artifact.selectedVersion.majorVersion}
版本不一定采用您描述的结构。
Maven 有尾随数字的约定,但您不必使用它们。
如果您有一个想要反汇编的约定,您可以编写自己的 maven 插件,在定义它们时将多个属性设置为多个部分。