Obter TAG version do POM.XML no Java

3 respostas
A

Olá pessoal, tenho um método que tenta obter a versão do sistema no pom.properties após gerado o WAR, mas verifiquei que não é encontrado esse arquivo quando o método é chamado.

Segue meu método que tenta realizar a chamada a TAG.

public String obterVersaoSistema() throws Exception {
	Properties p = null;
	String versao = "";
	String caminho = SEPARADOR + "META-INF" + SEPARADOR + "maven" + "..." + SEPARADOR + "pom.properties";
	
	File f = new File(caminho);
	if(f.exists()){
		p =	PropertiesUtil.getProperties(caminho);
		versao = p.getProperty("version"); 
	}
	return versao;
}

Grato!

3 Respostas

A

Pessoal, alguem tem uma outra dica de como fazer isso, pois esta não está rolando.

Grato!

A

Meu problema é diferente… eu consigo a version, mas às vezes no meu POM é declarado antes de , e o sistema pega a versão do pai ao invés da versão do projeto…

exemplo:

<name>java-master-pom</name>
	<packaging>pom</packaging>
	<parent>
		<groupId>etc</groupId>
		<artifactId>master-pom</artifactId>
		<version>1.20-SNAPSHOT</version>
        </parent>
   <version>1.22-SNAPSHOT</version>

quando eu peço na classe do projeto, this.version deveria vir 1.22, mas vem 1.20(versão do pai)…

arquivos POM onde primeiro aparece e depois, fica tudo certo… ou seja, ele tá pegando a 1a ocorrencia de , independente se ela for dentro de um parent…

A

Talvez esteja falando besteira mas tambem não tenho como testar aqui, mas já tentou fazer algo parecido com isto ?

p.getProperty("parent").getProperty("version")
Criado 14 de setembro de 2010
Ultima resposta 25 de ago. de 2011
Respostas 3
Participantes 2