2015-08-25 10 views
10

मैं देख रहा हूँ इसी तरह के सवालNetBeans में किसी भी JavaFX परियोजना संकलन रिटर्न असमर्थित MAJOR.MINOR संस्करण 52.0

लेकिन कोई भी के एक नंबर मेरे जैसी ही परिस्थितियों के साथ। मैंने वैसे भी अपने समाधानों की कोशिश की है (जब प्रासंगिक हो) और उन्होंने मदद नहीं की है।

मैंने नेटबीन 8.0.2 में जावाएफएक्स एफएक्सएमएल एप्लीकेशन बनाया था और मुझे इच्छित सुविधाओं को प्राप्त करने के लिए मैन्युअल रूप से जेडीके को 1.7 से 1.8 तक अपग्रेड करना पड़ा था। मेरा मानना ​​है कि मैं जेआरई और जेडीके दोनों के लिए 1.8.0_52 का उपयोग कर रहा था और परियोजना ठीक से संकलित कर रही थी। तब मेरे कंप्यूटर मेरे जावा 8. अब के लिए एक अद्यतन की अधिसूचित:

[email protected]:~$ java -version 
java version "1.8.0_60" 
Java(TM) SE Runtime Environment (build 1.8.0_60-b27) 
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) 

[email protected]:~$ javac -version 
javac 1.8.0_60 

और अचानक किसी भी जावा 8 FXML परियोजना, संकलन समय के दौरान ऊपर त्रुटि संदेश प्राप्त होता भी मानक बुनियादी JavaFX FXML Application कि NetBeans के साथ आता है। जावा 7 एफएक्सएमएल संकलित करेगा लेकिन 7 में महत्वपूर्ण विशेषताएं गायब हैं। मैंने 8 को निर्दिष्ट नई परियोजनाएं शुरू की हैं और मैंने 7 में एक नई परियोजना शुरू की है और फिर इसे 8 तक अपग्रेड कर दिया है: एक ही परिणाम।

मैंने यह सुनिश्चित किया है कि स्रोत श्रेणी में स्रोत/बाइनरी प्रारूप जेडीके 8 है और जावा प्लेटफार्म परियोजना के गुणों की पुस्तकालय श्रेणी में जेडीके 1.8 पर सेट है। मुझे अपडेट करने के लिए कोई और सेटिंग नहीं मिल सकती है। जब भी मैं एक सेटिंग बदलता हूं, मैंने एक साफ निर्माण की कोशिश की है। त्रुटि आईडीई-जेनरेट की गई फ़ाइल jfx-impl.xml में होती है जो कि पूरी तरह से पोस्ट करने के लिए बहुत बड़ी है, 4000 से अधिक लाइनों से अधिक है। मैं यहां एक हिस्सा पोस्ट करता हूं।

<target name="-check-ant-javafx-version" depends="-pre-check-ant-javafx-version, 
     -set-endorsed-javafx-ant-classpath,-set-javafx-ant-classpath" if="do.check.ant-javafx.version"> 
    <echo message="ant-javafx.jar.location = ${ant-javafx.jar.location}" level="verbose"/> 
    <echo message="javafx.ant.classpath = ${javafx.ant.classpath}" level="verbose"/> 
    <taskdef resource="com/sun/javafx/tools/ant/antlib.xml" 
     uri="javafx:com.sun.javafx.tools.ant" 
     classpath="${javafx.ant.classpath}"/> 
    <condition property="have-fx-ant-init"> 
     <typefound name="javafx:com.sun.javafx.tools.ant:init-ant"/> 
    </condition> 
    <property name="ant-javafx-version-already-checked-in-jfximpl" value="true"/> 
    <echo message="have-fx-ant-init = ${have-fx-ant-init}" level="verbose"/> 
</target> 

त्रुटि संदेश है: classpath="${javafx.ant.classpath}" लाइन 406, जहां संकलक त्रुटि की सूचना है

/home/chris/Projects/Java/FXMLTimer/nbproject/jfx-impl.xml:3438: The following error occurred while executing this line: 
/home/chris/Projects/Java/FXMLTimer/nbproject/jfx-impl.xml:406: 
java.lang.UnsupportedClassVersionError: com/sun/javafx/tools/ant/Permissions : Unsupported major.minor version 52.0 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
    at org.apache.tools.ant.AntClassLoader.defineClassFromData(AntClassLoader.java:1136) 
    at org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1307) 
    at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1362) 
    at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1323) 
    at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1076) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
    at java.lang.Class.forName0(Native Method) 
    at java.lang.Class.forName(Class.java:278) 
    at org.apache.tools.ant.taskdefs.Definer.addDefinition(Definer.java:579) 
    at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:237) 
    at org.apache.tools.ant.taskdefs.Antlib.execute(Antlib.java:180) 
    at org.apache.tools.ant.taskdefs.Definer.loadAntlib(Definer.java:428) 
    at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:277) 
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 
    at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
    at org.apache.tools.ant.Task.perform(Task.java:348) 
    at org.apache.tools.ant.Target.execute(Target.java:435) 
    at org.apache.tools.ant.Target.performTasks(Target.java:456) 
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 
    at org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) 
    at org.apache.tools.ant.Project.executeTargets(Project.java:1248) 
    at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:441) 
    at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) 
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292) 
    at sun.reflect.GeneratedMethodAccessor169.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) 
    at org.apache.tools.ant.Task.perform(Task.java:348) 
    at org.apache.tools.ant.Target.execute(Target.java:435) 
    at org.apache.tools.ant.Target.performTasks(Target.java:456) 
    at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393) 
    at org.apache.tools.ant.Project.executeTarget(Project.java:1364) 
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) 
    at org.apache.tools.ant.Project.executeTargets(Project.java:1248) 
    at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:286) 
    at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:555) 
    at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153) 
BUILD FAILED (total time: 7 seconds) 

किसी को भी एक विचार है कि मैं क्या याद कर रहा हूँ है? क्या NetBeans में या 1.8.0_60 एसडीके या जेआरई में कोई बग है? आपके समय के लिए धन्यवाद & विचार!

+0

इसका मतलब है कि आप एक और (पुराने) संस्करण की तुलना में आप में – Stultuske

+0

यह संकलित @stultsuke मैं इसे नहीं चल रहा हूँ में अपने कोड को चलाने के लिए कोशिश कर रहे हैं।। यह अभी तक संकलित नहीं है। जैसा कि मैंने कहा है, मैंने अन्य लेखों की जांच की है और उन सुझावों ने मदद नहीं की है। –

+0

वास्तव में, अतिरिक्त लेख पढ़ना मुझे लगता है कि यह वही सुझाव अलग-अलग कोडर द्वारा प्रत्येक लेख में किया गया है, और यह कभी भी उपयोगी उत्तर के रूप में नहीं चुना गया है। –

उत्तर

15

आपको netbeans.conf फ़ाइल में netbeans_jdkhome को बदलना होगा।

  • नेटबीन बंद होने पर बंद करें। \ Program Files \ NetBeans 7.3 \ आदि \ netbeans.conf
  • बदलें वांछित JDK संस्करण
    उदाहरण के लिए पैरामीटर "netbeans_jdkhome" के लिए मूल्य: netbeans_jdkhome = "C: \ Program Files \
  • फ़ाइल सी का पता लगाएं जावा \ jdk1.7.0_21 "
  • फ़ाइल को सहेजें और नेटबीन को दोबारा शुरू करें।

स्रोत + अधिक विस्तृत जानकारी: https://joanpaon.wordpress.com/2013/06/11/how-to-change-netbeans-default-java-platform-2/

+0

हाँ, यह भी काम करेगा! बहुत कम प्रयास भी। –

+0

यह मेरे लिए काम किया। धन्यवाद। – Omolara

0

मैं अन-अस्थिर जेडीके 7, अन-स्थापित नेटबीन, नेटबीन को फिर से स्थापित और पुनः संकलित। अब कोई त्रुटि नहीं है। (जब मैंने अनइंस्टॉल किया, तो मैंने इंस्टॉल निर्देशिका और सेटिंग्स छोड़ीं। जब मैंने पुनः स्थापित किया, तो मुझे एक नई निर्देशिका बनाना पड़ा लेकिन नेटबीन ने पुरानी सेटिंग्स को रखा होगा क्योंकि मुझे वरीयताओं को बदलने या फिर से जोड़ने की आवश्यकता नहीं थी प्लग-इन)। मैंने फिर जेडीके 7 को फिर से स्थापित किया (क्योंकि अन्य परियोजनाएं जावा 7 में हैं), फिर से परीक्षण और अभी भी काम कर रही हैं।

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