Java.io.ObjectInputStream प्रकार को हल नहीं किया जा सकता है। यह अप्रत्यक्ष रूप से आवश्यक.class फ़ाइलों से संदर्भित है




eclipse java-ee (6)

मैंने एक्लिप्स डाउनलोड किया है और नमूना सर्वलेट प्रोग्राम बनाने की कोशिश की है लेकिन मुझे निम्न त्रुटि मिली है

Java.io.ObjectInputStream प्रकार को हल नहीं किया जा सकता है। यह अप्रत्यक्ष रूप से आवश्यक .class फ़ाइलों से संदर्भित है

मैंने सही तरीके से निर्माण पथ कॉन्फ़िगर किया है। मैं जावा 8 और अपाचे टॉमकैट 7 का उपयोग कर रहा हूं और दोनों के लिए पुस्तकालयों का सही ढंग से संदर्भित किया गया है।

समस्या विशेष रूप से केवल जावा ईई के लिए है। आमतौर पर जावा एसई परियोजनाएं ठीक चल रही हैं।

https://code.i-harness.com


आपको बस अपने टोमकैट संस्करण को टॉमकैट 8.0.xx पर अपग्रेड करना होगा। जावा 8 <-> टॉमकैट 8

यह वह कॉन्फ़िगरेशन है जिसका मैं उपयोग कर रहा हूं और यह हमेशा अच्छी तरह से काम करता रहा है


जावा 8 अपडेट 91 में कुछ हुआ जो मौजूदा जेएसपी कोड तोड़ दिया। यह बहुत स्पष्ट लगता है। यहां समान प्रश्नों और बग रिपोर्ट का नमूना दिया गया है:

ये सभी जावा 8 अपडेट 91 (या बाद में) के साथ समस्याएं हैं जो पहले जेआरई / जेडीके संस्करणों का उपयोग करते समय मौजूद नहीं हैं।

22 जनवरी 2016 से निम्नलिखित ओपनजेडीके परिवर्तन से संबंधित प्रतीत होता है: http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/rev/32f64c19b5fb (संदेश भेजें "8144430: जेएमएक्स कनेक्शन में सुधार करें")। परिवर्तन इस भेद्यता से संबंधित प्रतीत होता है, https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-3427 , जिसका उल्लेख इस Red Hat बग रिपोर्ट, https://bugzilla.redhat.com/show_bug.cgi?id=1336481 टिप्पणी में किया गया है https://bugzilla.redhat.com/show_bug.cgi?id=1336481

अपडेट 91 रिलीज नोट्स दस्तावेज़ जेडीके -8144430 (गैर-सार्वजनिक टिकट) का उल्लेख करता है: http://www.oracle.com/technetwork/java/javase/8u91-relnotes-2949462.html

"ओरेकल क्रिटिकल पैच अपडेट एडवाइजरी - अप्रैल 2016" में, सीवीई-2016-3427 भेद्यता का उल्लेख किया गया है: http://www.oracle.com/technetwork/security-advisory/cpuapr2016v3-2985753.html


ठीक है, यह सवाल एक साल पहले था लेकिन मुझे हाल ही में यह समस्या भी मिली।

तो मैंने क्या किया:

  1. टॉमकैट 8 को टॉमकैट 8 अपडेट करें।
  2. नवीनतम जावा (जावा 1.8.0_141) पर अपडेट करें।
  3. प्रोजेक्ट> गुण> जावा बिल्ड पथ में जेआरई सिस्टम लाइब्रेरी अपडेट करें। सुनिश्चित करें कि इसमें नवीनतम संस्करण है जो मेरे मामले में jre1.8.0_141 है (इससे पहले कि यह पिछले संस्करण jre1.8.0_111 था)

जब मैंने पहले दो चरणों को किया तो यह अभी भी त्रुटि को नहीं हटाता है, इसलिए अंतिम चरण महत्वपूर्ण है। यह जेरे के लिए स्वचालित रूप से निर्माण पथ नहीं बदल सका।


मुझे भी एक ही समस्या का सामना करना पड़ रहा था। मेरे पास जेडीके 1.7.0.7 9 था। फिर मैंने इसे जेडीके 8.0.120 के साथ अपडेट किया। फिर समस्या हल हो गई। उन्नत जेडीके के सफल समापन के बाद। प्रोजेक्ट पर जाएं-> साफ करें। यह परियोजना का पुनर्निर्माण करेगा और सभी लाल चेतावनी समाप्त हो जाएंगी।


मैं Google एपेंगेन जावा एसडीके का उपयोग कर रहा हूं और इसी तरह के मुद्दे का सामना कर रहा था। मुझे जोड़ना पड़ा

<runtime>java8</runtime>

इसे काम करने के लिए appengine-web.xml फ़ाइल में।


युक्ति:

विंडो -> प्राथमिकताएं -> जावा -> स्थापित जेआरई , एक अलग जेआरई का चयन करें

शायद यह जेडीके संस्करण उपयुक्त नहीं है:

तो इसके बजाय इसे आजमाएं:

समस्या सुलझ गयी!





buildpath