Desde que atualizei para o Maven 3, recebo as seguintes mensagens de aviso em cada build:
Como posso me livrar desses avisos?
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for proj:id:jar:3.1
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-javadoc-plugin is missing. @ line 195, column 15
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. @ line 204, column 15
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-surefire-plugin is missing. @ line 227, column 15
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-jar-plugin is missing. @ line 215, column 15
[WARNING] 'reporting.plugins.plugin.version' for org.codehaus.mojo:jdepend-maven-plugin is missing. @ line 271, column 15
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
maven
maven-plugin
maven-3
Istao
fonte
fonte
Respostas:
Adicione um
<version>
elemento após o<plugin>
<artifactId>
no seupom.xml
arquivo. Encontre o seguinte texto:Adicione a tag da versão a ela:
O aviso deve ser resolvido.
Em relação a este:
Muitas pessoas mencionaram por que o problema está acontecendo, mas não sugerem uma solução. Tudo o que eu precisava fazer era entrar no meu arquivo POM para o meu projeto e adicionar a
<version>
tag, como mostrado acima.Para descobrir o número da versão, uma maneira é procurar na saída do Maven após a execução. Onde faltam números de versão, o Maven exibirá sua versão padrão:
Pegue esse número da versão (como
2.3.2
acima) e adicione-o ao seu POM, como mostrado.fonte
Executar como:
para plug-in que não possui versão. Você obtém saída:
Use a versão mostrada na saída.
ATUALIZAÇÃO Se você deseja selecionar entre a lista de versões, use http://search.maven.org/ ou http://mvnrepository.com/ Observe que seu Java IDE favorito deve ter a caixa de diálogo de pesquisa de pacotes Maven . Basta verificar os documentos.
SUPER ATUALIZAÇÃO Também uso:
Recentemente, descobri como obter a versão mais recente do plug-in (ou biblioteca) para não precisar mais pesquisar no Google ou visitar o Maven Central :
fonte
mvn help:describe -Dplugin=groupId:artifactId
O Maven 3 é mais restritivo com a estrutura POM. Você precisa definir versões dos plugins, por exemplo.
Com o maven 3.1, esses avisos podem ser quebrados. Há mais alterações entre o maven2 e o maven3: https://cwiki.apache.org/confluence/display/MAVEN/Maven+3.x+Compatibility+Notes
fonte
obtenha as informações da versão mais recente em:
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin
clique na versão mais recente (ou na que você gostaria de usar) e verá as informações da dependência (a partir de 2019-05 é 3.8.1):
convém usar a tag version e o comentário para a tag plugin.
se quiser, você pode modificar seu pom para ter as informações da versão na tag de propriedades, conforme descrito em outra resposta.
fonte
Estou usando um pom pai para meus projetos e queria especificar as versões em um único local, então usei propriedades para especificar a versão:
pom pai:
pom do projeto:
Veja também: https://www.allthingsdigital.nl/2011/04/10/maven-3-and-the-versions-dilemma/
fonte
É uma ótima resposta aqui. E eu quero adicionar 'Por que adicionar um elemento no Maven3'.
Em Maven 3.x Notas Compatibilidade
E também encontro no maven-compiler-plugin - uso
fonte
Pesquise "maven-jar-plugin" no pom.xml e adicione a tag version version maven version
fonte