2016-09-24 12 views
7

मैं सोनारक्यूब का उपयोग करके अपने स्रोत कोड का विश्लेषण करने की कोशिश कर रहा हूं। मैं कमांड लाइन से विश्लेषण चलाने के लिए अपने उपकरण के रूप में sonar-scanner का उपयोग करने की कोशिश कर रहा हूं। मैं इस दस्तावेज़ लेख में प्रस्तुत दिशा निर्देशों का पालन: http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scannerअसमर्थित major.minor संस्करण सोनार-स्कैनर के लिए अपवाद

मैं चल sonar-scanner -h मैं निम्न त्रुटि हो रही है द्वारा स्थापना का परीक्षण करने का प्रयास करते हैं:

➜ ~ sonar-scanner -h 
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/sonarsource/scanner/cli/Main : Unsupported major.minor version 52.0 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482) 

त्रुटि यह अपने सही नहीं मिल की तरह लग रहा से क्ली उपकरण चलाने के लिए जावा/जेआरई के लिए संस्करण। मेरी समझ यह थी कि टूल को किसी भी जावा 1.7+ संस्करण के साथ काम करना चाहिए। मैं Oracle JDK 1.7.0_55 का उपयोग कर रहा हूं। मैंने OpenJDK 1.8 का उपयोग करने का भी प्रयास किया लेकिन मुझे अभी भी एक ही त्रुटि मिल रही है। मैंने अपने JAVA_HOME वैरिएबल को भी सही जेडीके निर्देशिका में सेट किया है।

सही दिशा में कोई भी मदद की सराहना की जाती है।

उत्तर

10

थोड़ी देर के लिए इसके साथ संघर्ष करने के बाद, मुझे समस्या का कारण मिला। सीएलआई जावा के संस्करण को समझने के लिए आपके JAVA_HOME पथ चर को देख रहा है, जिसका उपयोग करने की आवश्यकता है। यहां तक ​​कि डिफ़ॉल्ट java और javac कमांड जेडीके 8 को इंगित कर रहे थे, JAVA_HOME पर्यावरण चर को आपके जेडीके 8 रूट निर्देशिका में सेट करने से समस्या हल हो गई।

उम्मीद है कि यह अन्य लोगों को इसी तरह के मुद्दे का सामना करने में मदद करता है।

2

यह पहले से ही विस्तार से उत्तर यहां दिया गया है: Unsupported major.minor version 52.0 और यहाँ: How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version

तर्क यह है कि आप एक जावा 7 या कम पर सोनार निष्पादित करने के लिए कोशिश कर रहे हैं जब सोनार कक्षाएं इस प्रकार जावा 8 के लिए संकलित किया गया है है इस त्रुटि को ट्रिगर करना।

+0

जैसा कि मैंने पहले ही अपने प्रश्न में कहा है, मैंने जेडीके 7 और जेडीके 8 दोनों के साथ टूल चलाने का प्रयास किया है। मुझे अभी भी वही त्रुटि मिल रही है। – Amrish

+0

जैसा कि आपने स्वयं को प्रश्न में कहा था, "आपने JAVA_HOME पर्यावरण परिवर्तक की जांच की है" .... मुझे खेद है, लेकिन इसके अलावा मैंने आपको सही उत्तर पर इंगित किया है, जावा के आपके संस्करण को गलत किया गया था ... – Alex

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