इसलिए मैंने एसओएपी उदाहरण Working Soap client example पर लिया, इसे SOAPClientSAAJ.java
फ़ाइल में डाला, और इसे संकलित करने का प्रयास किया (Openjdk 9 डेबियन पर):"पैकेज javax.xml.soap मॉड्यूल java.xml.ws में घोषित किया गया है, जो मॉड्यूल ग्राफ में नहीं है"
[email protected] ~/javatest> javac SOAPClientSAAJ.java
SOAPClientSAAJ.java:1: error: package javax.xml.soap is not visible
import javax.xml.soap.*;
^
(package javax.xml.soap is declared in module java.xml.ws, which is not in the module graph)
1 error
कुछ Googling के बाद, मुझे पता चला है कि संकलन और
[email protected] ~/javatest> javac --add-modules java.xml.ws SOAPClientSAAJ.java
[email protected] ~/javatest> java --add-modules java.xml.ws SOAPClientSAAJ
काम करता है के रूप में चल रहा है। यह भी सामान्य पृष्ठभूमि के लिए इस वीडियो देखें: https://www.youtube.com/watch?v=y8bpKYDrF5I&t=20m17s
अब, सवाल:
- संकलक स्वचालित रूप से मॉड्यूल java.xml.ws जोड़ नहीं करना चाहिए? (चूंकि यह स्पष्ट रूप से जानता है कि इसकी आवश्यकता है) क्या यह javax.xml.soap में एक बग है?
- - मेरे मैन पेजों में --add-modules विकल्प क्यों नहीं प्रलेखित है? (डेबियन में ओपनजेडके 9)
- java.xml.ws मॉड्यूल को स्वचालित रूप से जोड़ने के लिए .java फ़ाइल में मुझे क्या लिखना चाहिए?