Execução de "Sonar MVN: Sonar" sem acesso externo
Pergunta
Eu tento executar o mvn sonar:sonar
Comando em uma máquina em que o Maven está configurado para não ter acesso a repositórios externos (na realidade, esse não é exatamente o caso, mas me ajuda a explicar meu problema).
Então, atualmente, se eu executar este comando, recebo o seguinte erro:
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'org.codehaus.mojo:sonar-maven-plugin' does not exist or no valid version could be found
Eu acho que significa que tenho alguns metadados incorretos no meu repositório local, pois tenho um [local repo]\org\codehaus\mojo\sonar-maven-plugin\1.0-beta-1
diretório (com o frasco dentro, é claro).
Você tem alguma ideia de por que meu comando está falhando?
Tech Infos: Maven 2.2.1, Java 1.6, Sonar 2.1.2
Solução 3
Meu problema está resolvido agora, pois era principalmente um problema do arquivo de metadados maven.
o org/codehaus/mojo/sonar-maven-plugin
não contém o correto maven-metadata.xml
Arquivo. Assim, o Maven 2 não conseguiu saber qual versão do plug -in era necessária. Adicionando -o resolveu meu problema.
Outras dicas
Você tentou as sugestões das perguntas frequentes:
O plugin 'org.apache.maven.plugins: Maven-Sonar-Plugin' não existe ou nenhuma versão válida pode ser encontrada
Se você receber esta mensagem de erro após iniciar a linha de comando Maven "MVN Sonar: Sonar" Adicione o parâmetro "-u" à linha de comando. A Maven atualizará seu repositório local com a versão mais recente do plug -in Sonar Maven.
Se adicionar o parâmetro "-u" não corrigir seu problema, você certamente encontrou o Maven Bug MNG-4001. A única solução alternativa conhecida é excluir o diretório org codehaus mojo no seu repositório Maven local. Obviamente, se o seu repositório Maven local for sincronizado com um gerente de repositório como o Nexus, essa operação também deverá ser feita no lado do gerente do repositório.
Assim como uma dica para aqueles que administram o sonar de Jenkins (usando o plug -in), vimos o problema semelhante.
Mas como os documentos oficiais dizem: http://docs.sonarqube.org/display/sonar/analyzing+with+maven Na seção: Como corrigir a versão do plugin maven
Você pode consertar a versão do Sonar-Maven-Plugin no Jenkins-> Configuração-> Sonar-> "Versão do Sonar-Maven-Plugin":
- Para Maven 2 a: 1.0
- para maven 3 a: 2.0
Como resultado, ele ignoraria a resolução da versão + lookup => impedir o problema relatado aqui.
ATUALIZAR:
Bem, eu apenas percebi, é aplicável a qualquer caso, não apenas Jenkins. Você pode especificar a versão explicitamente para evitar a pesquisa.