मैं Oracle की Nashorn जावा 7.Nashorn जावा 7 के तहत
के तहत चल रहा रेपो क्लोन और स्रोत संकलित किया है पाने के लिए कोशिश कर रहा हूँ। सभी मैं इसे संकलित करने के लिए प्राप्त करने के लिए करना पड़ा था: jdk.internal.org.objectweb.asm
- बदलें * org.objectweb.asm को *
- बदलें एक पंक्ति है कि Long.hashCode था (।।) स्थिर।
सब कुछ खुश दिखता है, और जावा 7 नैशॉर्न को एक स्क्रिप्टिंग इंजन के रूप में देखता है; लेकिन जब मैं कोशिश करते हैं और एक उदाहरण मिलता है:
java.lang.RuntimeException: java.lang.ClassNotFoundException: jdk.nashorn.internal.objects.Global पर
NashornScriptEngineFactory factory = new NashornScriptEngineFactory(); ScriptEngine engine = factory.getScriptEngine();
मैं अपवाद jdk.nashorn.internal.runtime.Context.newGlobalTrusted (Context.java:831) jdk.nashorn.internal.runtime.Context.newGlobal (Context.java:636) पर jdk.nashorn.api.scripting पर। नैशर्नस्क्रिप्टइंजिन $ 2.run (नैशर्नस्क्रिप्टइंजिन.जावा 7070) परjdk.nashorn.api.scripting.NashornScriptEngine $ 2.run (NashornScriptEngine.java:266) jdk.nashorn.api.scripting.NashornScriptEngine.createNashornGlobal पर java.security.AccessController.doPrivileged (मूल निवासी विधि) (NashornScriptEngine.java पर : 266) पर jdk.nashorn.api.scripting.NashornScriptEngine (NashornScriptEngine.java:104) jdk.nashorn.api.scripting.NashornScriptEngine (NashornScriptEngine.java:78 पर) jdk.nashorn पर।।। api.scripting.NashornScriptEngineFactory.getScriptEngine (NashornScriptEngineFactory.java:139)
jdk.nashorn.internal.objects.Global है मेरे वर्ग पथ में। क्या नैशर्न शायद एक अलग वर्ग लोडर का उपयोग करता है?
धन्यवाद। अब उपलब्ध कोड और बिटबकेट बैकपोर्ट के बीच नैशर्न स्रोत में बहुत सारे बदलाव हैं। उपरोक्त त्रुटियों को दे रहे नैशोर्न कोड बिटबकेट संस्करण में भी नहीं है। – Kong
जैसे ही जावा 8 पूर्वावलोकन आया था, उसमें मैंने इसका उपयोग बंद कर दिया था जिसमें इसमें नैशर्न था। यदि आप जेएसआर 223 एपीआई के माध्यम से नैशर्न का उपयोग करते हैं तो आपका कोड जावा 7 में राइनो के साथ काम करेगा यदि सही ढंग से लिखा गया है, तो मैं इस समय दोनों के साथ कैसे विकसित हूं। –