JavaSE 8包含包java.xml.soap
。
JavaSE 9將包移動javax.xml.soap
到模塊java.xml.ws
。
與JEE(如共享的模塊java.xml.ws
)包括在JavaSE的9,但
- 棄用用於去除從JavaSE中的將來版本,以及
- 不是默認模塊路徑上。post
一個快速的解決方法是
- 使用JRE 8運行jar:$MY_JRE8_HOME/bin/java -jar my.jar
或
- 爲JRE 9添加模塊:java --add-modules java.xml.ws -jar my.jar
ui
從長遠來看,使用相似模塊的JavaSE項目java.xml.ws
必須像其餘庫同樣明確地包含模塊。spa
請參閱https://stackoverflow.com/a/46359097
請參閱JDK 9遷移指南:與JEE共享的模塊默認狀況下未解析code
(在https://spring.io/guides/gs/producing-web-service/上重現了NoClassDefError和壓縮SOAP Web服務項目的變通方法)