Galera, seguinte tenho o sistema maven e talz, e no aplicativo aparece a versão, quando o sistema está rodando.
Gostaria de pegar a versão dentro do pom.xml.
Alguem ai sabe como fazer isso?
[]'s
Galera, seguinte tenho o sistema maven e talz, e no aplicativo aparece a versão, quando o sistema está rodando.
Gostaria de pegar a versão dentro do pom.xml.
Alguem ai sabe como fazer isso?
[]'s
${project.version}
eu quero pegar via codigo java.
pra mim setar no title do JFrame a versão.
Eu sei que maven não é minha praia, mas não seria possível fazer com que o processo de compilação gerasse um arquivo properties que fosse empacotado dentro do seu jar, e que contivesse a versão do projeto? Então na hora de mostrar na caixinha de “About” de seu programa, você leria esse properties.
Olá Felagund, como conseguiu resolver esta questão? Pois estou com a mesma duvida.
Olá, vi que as dúvidas são antigas, mas pode ter alguém procurando por essa resposta atualmente. Segue abaixo uma maneira simplificada de como recuperar a versão informada no pom.xml.
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-model-builder</artifactId>
<version>3.2.5</version>
</dependency>
private String getVersion() {
try (FileReader reader = new FileReader("pom.xml")) {
MavenXpp3Reader mReader = new MavenXpp3Reader();
Model model = mReader.read(reader);
return model.getVersion();
} catch (Exception e) {
return "";
}
}
A classe Model tem toda a estrutura do pom, portanto, é possível recuperar praticamente todas as informações do a partir desse objeto.
Você pode acessar a versão definida no pom.xml diretamente do código-fonte usando o Maven. Uma abordagem comum é usar o plugin maven-resources-plugin
para filtrar o arquivo pom.xml e extrair a versão para um arquivo de propriedades. Dessa forma, você pode carregar essa propriedade no seu aplicativo durante a execução para exibir a versão. Se precisar de mais detalhes ou exemplos específicos, posso ajudar a encontrar a melhor solução para o seu caso.