2015-12-07 11 views
5

3.3.2 से सोनारक्वे 5.1.2 तक अपग्रेड करने के बाद, मेरा मैवेन जेडीके 1.6 के साथ निर्मित होने वाली परियोजना के लिए निर्माण कर रहा है:संगठन/सोनार/एपीआई/यूटिल/सोनार अपवाद: असमर्थित major.minor संस्करण 51.0

build 03-Dec-2015 19:33:10 [INFO] ------------------------------------------------------------------------ 
build 03-Dec-2015 19:33:10 [ERROR] Failed to execute goal org.codehaus.mojo:sonar-maven-plugin:2.6:sonar (default-cli) on project my_project: Execution default-cli of goal org.codehaus.mojo:sonar-maven-plugin:2.6:sonar failed: An API incompatibility was encountered while executing org.codehaus.mojo:sonar-maven-plugin:2.6:sonar: java.lang.UnsupportedClassVersionError: org/sonar/api/utils/SonarException : Unsupported major.minor version 51.0 
build 03-Dec-2015 19:33:10 [ERROR] ----------------------------------------------------- 
build 03-Dec-2015 19:33:10 [ERROR] realm = plugin>org.codehaus.mojo:sonar-maven-plugin:2.6 
build 03-Dec-2015 19:33:10 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy 
build 03-Dec-2015 19:33:10 [ERROR] urls[0] = file:/tmp/org/codehaus/mojo/sonar-maven-plugin/2.6/sonar-maven-plugin-2.6.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[1] = file:/tmp/org/apache/maven/shared/maven-dependency-tree/2.1/maven-dependency-tree-2.1.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[2] = file:/tmp/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[3] = file:/tmp/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[4] = file:/tmp/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[5] = file:/tmp/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[6] = file:/tmp/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[7] = file:/tmp/org/codehaus/plexus/plexus-utils/1.5.5/plexus-utils-1.5.5.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[8] = file:/tmp/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[9] = file:/tmp/org/codehaus/sonar/runner/sonar-runner-api/2.4/sonar-runner-api-2.4.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[10] = file:/tmp/commons-lang/commons-lang/2.6/commons-lang-2.6.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[11] = file:/tmp/com/google/guava/guava/10.0.1/guava-10.0.1.jar 
build 03-Dec-2015 19:33:10 [ERROR] urls[12] = file:/tmp/com/google/code/findbugs/jsr305/2.0.3/jsr305-2.0.3.jar 
build 03-Dec-2015 19:33:10 [ERROR] Number of foreign imports: 1 
build 03-Dec-2015 19:33:10 [ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]] 
build 03-Dec-2015 19:33:10 [ERROR] 
build 03-Dec-2015 19:33:10 [ERROR] ----------------------------------------------------- 
build 03-Dec-2015 19:33:10 [ERROR] -> [Help 1] 

एक संगतता समस्या, किसी भी विचार की तरह लगता है? पुराने सोनार को इंगित करना यह अभी भी ठीक काम करता है, नए को इंगित करता है, मुझे यह मिलता है।

धन्यवाद, रॉबर्टो

उत्तर

8

साथ विश्लेषण चलाना चाहिए, आप कम से कम जावा 7 एक SonarQube विश्लेषण चलाने के लिए की जरूरत है।

आप जावा 6 के साथ अपनी परियोजना को हमेशा बना सकते हैं (संकलित, परीक्षण, ... आदि), लेकिन फिर आपको जावा 7 या उससे अधिक का उपयोग करने के लिए अपने सोनारक्यूब विश्लेषण को कॉन्फ़िगर करने की आवश्यकता है।

+1

वास्तव में किस प्रकार आप सोनार विश्लेषण जावा 8 उपयोग करने के लिए है, जबकि परियोजना अभी भी जावा 7 कॉन्फ़िगर करूँ? मुझे sonar.java.home या इसी तरह की कोई संपत्ति नहीं मिली ... – dokaspar

2

SonarQube 5.x सर्वर को चलाने के लिए और विश्लेषण को चलाने के लिए जावा 7 की आवश्यकता है।

यह अभी भी परियोजनाओं जावा 6 के साथ निर्माण का विश्लेषण करेगा, लेकिन आप "Requirements" page या "SonarQube 5.0 Upgrade Guide" में पढ़ सकते हैं के रूप में आप जावा 7.

0

मैनेन्स के माध्यम से जेनकिंस पर अपने सोनार विश्लेषण को चलाने में लगभग उसी समस्या में गिर गया। कुछ बिंदु पर एक परियोजना विश्लेषण है कि काम किया विफल शुरू कर दिया है, जबकि:

  • SonarQube सर्वर नहीं बदले हैं (संस्करण 4.5.6)
  • जेनकींस नौकरी config विचार नहीं बदले हैं (Maven नौकरी JDK 1.7.0.45 के साथ विन्यस्त)
  • Maven config

विचार नहीं बदले हैं और यह मैं क्या मिल गया है:

org.codehaus.plexus.component.repository.exception.ComponentLookupException: org/sonarsource/scanner/maven/SonarQubeMojo : Unsupported major.minor version 52.0 
17:27:29 [ERROR] ----------------------------------------------------- 
17:27:29 [ERROR] realm = plugin>org.sonarsource.scanner.maven:sonar-maven-plugin:3.1.1 
17:27:29 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy 
17:27:29 [ERROR] urls[0] = file:/c:/tools/.m2/repository/org/sonarsource/scanner/maven/sonar-maven-plugin/3.1.1/sonar-maven-plugin-3.1.1.jar 
17:27:29 [ERROR] urls[1] = file:/c:/tools/.m2/repository/org/apache/maven/shared/maven-dependency-tree/2.2/maven-dependency-tree-2.2.jar 
17:27:29 [ERROR] urls[2] = file:/c:/tools/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar 
17:27:29 [ERROR] urls[3] = file:/c:/tools/.m2/repository/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar 
17:27:29 [ERROR] urls[4] = file:/c:/tools/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.4/plexus-sec-dispatcher-1.4.jar 
17:27:29 [ERROR] urls[5] = file:/c:/tools/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar 
17:27:29 [ERROR] urls[6] = file:/c:/tools/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar 
17:27:29 [ERROR] urls[7] = file:/c:/tools/.m2/repository/org/sonarsource/scanner/api/sonar-scanner-api/2.7/sonar-scanner-api-2.7.jar 
17:27:29 [ERROR] urls[8] = file:/c:/tools/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar 
17:27:29 [ERROR] urls[9] = file:/c:/tools/.m2/repository/com/google/code/findbugs/jsr305/2.0.3/jsr305-2.0.3.jar 
17:27:29 [ERROR] Number of foreign imports: 1 
17:27:29 [ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]] 

issu ई जावा संस्करण का एक बेमेल द्वारा यहां के कारण होता है के बीच:

  • जेनकींस नौकरी JDK 1.7.x
  • सोनार-Maven-प्लगइन संस्करण 3.1.1 JDK 1.8.x के साथ संकलित किया जा रहा है को क्रियान्वित करने

प्लगइन का संस्करण स्पष्ट रूप से pom.xml में सेट नहीं किया गया था, इसलिए प्लगइन के इस संस्करण को लेते समय विश्लेषण विफल हो गया।

कई कारणों से, जॉब जेडीके को 1.8 तक अपग्रेड नहीं किया जा सका, इसलिए सोनार-मेवेन-प्लगइन का संस्करण 3.0.2 पर तय किया गया था।

0

यह सही है, आपको जावा 1.7 संस्करण की आवश्यकता है। सुनिश्चित करें कि आपने jdk संस्करण को अद्यतन नहीं किया है।

पहले सत्यापित करें कि कौन सा env वैरिएबल jdk संस्करण लेने के लिए उपयोग किया जाता है।

javac -version

उत्पादन:

Picked up _JAVA_OPTIONS: -Xmx512M javac 1.7.0_80

कमांड लाइन पर जाएँ और नीचे परिवर्तन का पालन करें।

Set JAVA_OPTIONS=C:\Program Files\Java\jdk1.7.0_80

या

Set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_80 set PATH=%JAVA_HOME%\bin;%PATH%

+0

यह उत्तर कुछ [कोड स्वरूपण] (https://meta.stackexchange.com/questions/22186/how-do-i का उपयोग करके सुधार किया जा सकता है -format-मेरी-कोड-ब्लॉक)। – Ben

संबंधित मुद्दे