Параметризованная версия, как Spring Boot

Я хочу параметризовать версию Maven как переменную типа Spring Boot.

Каждый субмодуль использует версию как <version>${revision}</version>,

@see git@github.com:iPhotoner/parameterized-version-demo.git

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
                        http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <artifactId>demo-ri</artifactId>
    <version>1.0.0</version>

    <parent>
        <groupId>com.demo</groupId>
        <artifactId>demo-parent</artifactId>
        <version>parameterized.version</version>
        <relativePath />
    </parent>

    <properties>
        <demo.version>parameterized.version</demo.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.demo</groupId>
            <artifactId>demo-api</artifactId>
            <version>${demo.version}</version>
        </dependency>
    </dependencies>

    <repositories>
        <repository>
            <id>nexus</id>
            <name>maven-public</name>
            <url>http://192.168.1.1:8089/repository/maven-public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</project>

1 ответ

Спасибо ,@khmarbaise, я отказался от использования maven-ci-friendly в настоящее время, возможно, ${revision} что-то не так с ${revision} при весенней загрузке, и в некоторых версиях я не могу его удержать;

во-первых, я создал модуль, расширяющий родительский: не распространяется

второе: плагин flatten происходит в стандартной версии Java Eclipse 4.7.3a; Не могу загрузить Flatten

три: использовать наследуемый плагин flatten:true или false, и starter-* open, проект работает нормально, junit Five и restdoc могут выходить из стартового модуля, если не использовать flatten, также работает нормально:

<plugin>
       <groupId>org.codehaus.mojo</groupId>
         <artifactId>flatten-maven-plugin</artifactId>
         <version>1.1.0</version>
         <!-- <inherited>true or false</inherited> -->
         <configuration>
           <updatePomFile>true</updatePomFile>
         </configuration>
         <executions>
           <execution>
              <id>flatten</id>
              <phase>process-resources</phase>
              <goals>
                <goal>flatten</goal>
              </goals>
           </execution>
           <execution>
              <id>flatten.clean</id>
              <phase>clean</phase>
              <goals>
                <goal>clean</goal>
              </goals>
           </execution>
         </executions>
      </plugin>

простираться

шаг четвертый: если я выполняю mvn clean deploy jar для загрузки в nexus и закрываю стартовый модуль, ошибки в cif-зависимости проекта, этот проект не имеет никакого отношения к стартовому модулю (только расширяется от него), и junit Five/restdocs не могут быть расширены от модуля стартера, не расширяется

Другие вопросы по тегам