2015-10-23 10 views
7

私たちのジェンキンスさんがビルドを停止します。ジェンキンスソナープラグインが突然エラーで一晩失敗し始めた作業

[ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.7:sonar (default-cli) on project <project>: 
Execution default-cli of goal org.codehaus.mojo:sonar-maven-plugin:2.7:sonar failed: 
Unable to load the mojo 'sonar' in the plugin 'org.codehaus.mojo:sonar-maven-plugin:2.7' due to an API incompatibility: 
org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/codehaus/mojo/sonar/SonarMojo : 
Unsupported major.minor version 51.0 

ジェンキンスサーバは、まだJava 6のを実行しているが、我々は何も変更しませんでした。

何が起こったのですか。どのように修正しましたか?

答えて

25

jenkins-sonar-pluginは、sonar-maven-pluginを使用してソナー解析を実行します。

ソナー-のmaven-pluginのは、2015年10月19日に2.7に更新され、新しいバージョンが6

ジェンキンス・ソナー・プラグインがあたりソナー-のmaven-pluginの最新バージョンを使用するJavaと互換性がありませんデフォルトですが、これを上書きすることができます。

エラーを修正するには、 "Manage Jenkins"/"Configure System"を開き、Sonarセクションを見つけてadvancedをクリックし、 "Version of sonar-maven-plugin"に2.6と入力します。これにより、Java 6で動作する旧バージョンのsonar-maven-pluginをjenkins-sonar-pluginに強制的に適用させることができます。

また、特定のJenkinsジョブに対して2.6を設定する場合は、 2.6のバージョンは標準sonar:sonarの代わりにorg.codehaus.mojo:sonar-maven-plugin:2.6:sonarという目標を使用しています。

また:Javaの7または

+1

とJava 8で述べたように、[このポスト](http://stackoverflow.com/a/31394509/2999457)へとオラクル[上のビルドサーバーをアップグレードする計画を開始](http://www.oracle.com/technetwork/java/javase/compatibility-417013.html)「Java SE 7のクラスファイルのバージョンは51です」したがって、「サポートされていないmajor.minorバージョン51.0」 – lazi74

+0

リンクsonar-maven-pluginを無効にすることはできません。それを更新してもらえますか? – NewUser

+0

@NewUser:私は自分自身でそのリンクを追加しなかったので、それが何を含んでいるのかわかりません。とにかく、次の段落では設定を上書きする方法について説明します。 –

関連する問題