Posso criar um jar executável com "build-info" do "Spring Boot Maven Plugin"?

YONGSOO KIM:

Estou tentando criar um arquivo jar executável com "Spring Boot Maven Plugin".

Normalmente, eu posso fazer isso definindo "reembalar". A meta no meu arquivo pom.xml foi definida assim.

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>2.2.6.RELEASE</version>
    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>

E meu comando de construção é assim:

mvn clean package spring-boot:repackage

Isso funciona, mas eu quero ter META-INF / build-info.properties no arquivo jar.

Por ter esse arquivo, posso verificar as informações de compilação no meu aplicativo springboot, então quero tê-las.

Para gerar o arquivo " META-INF / build-info.properties ", preciso definir a meta "build-info" .

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>2.2.6.RELEASE</version>
    <executions>
        <execution>
            <goals>
                <goal>build-info</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Bem, agora estou em um dilema porque

  1. Definindo o objetivo "reembalar" -> um jar executável sem "META-INF / build-info.properties"
  2. Definindo o objetivo "build-info" -> um jar inexecutável com "META-INF / build-info.properties"

Eu quero ter um jar executável com "META-INF / build-info.properties".

Eu sou muito novo nesse processo. Há alguém que possa me ajudar?


RESOLVIDO

Eu resolvi esse problema. O problema era que spring-boot-maven-pluginestava no lugar errado. Estava dentro <pluginManagement>. Eu mudei este plugin para<plugins>

Como o @Mark Bramnik respondeu, eu posso definir as duas metas no pom.xml, e o mvn clean packagecomando é suficiente!

Mark Bramnik:

Você pode executar vários objetivos do mesmo plug-in. Então você provavelmente pode fazer algo assim:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>2.2.6.RELEASE</version>
    <executions>
        <execution>
            <goals>
                <goal>build-info</goal>
            </goals>
        </execution>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

TOP lista

quentelabel

Arquivo