是否有可能获得<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插件,在你定义它们时为几个部分设置几个属性。