java.lang.ClassNotFoundException: com.sun.xml.ws.spi.ProviderImpl解決辦法
阿新 • • 發佈:2017-12-05
get -- 現在 rim otf jar eclips 示例 升級
問題現象:
這種很可能出現在獨立一個簡單示例項目中可以用,但是在把webService模塊加入系統後,報出這類錯誤。
Exception in thread "main" javax.xml.ws.WebServiceException: Provider com.sun.xml.ws.spi.ProviderImpl not found at javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:38) at javax.xml.ws.spi.FactoryFinder.find(FactoryFinder.java:133) at javax.xml.ws.spi.Provider.provider(Provider.java:76) at javax.xml.ws.Endpoint.publish(Endpoint.java:156) at com.test.webservice.MyService.main(MyService.java:7) Caused by: java.lang.ClassNotFoundException: com.sun.xml.ws.spi.ProviderImpl at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at javax.xml.ws.spi.FactoryFinder.newInstance(FactoryFinder.java:34) ... 4 more
可能原因及解決:
1.版本需要:jre版本1.6(均含),jave EE5以上;升級
2.可能是應用程序的lib中加入了jaxb-impl.jar,而沒有引入jaxws-rt的jar,或者仔細檢查一下有無這塊的引用不完整情況。關於JAX-WS加載順序可參考《JAX-WS Provider (JAXB) 的加載順序》;補充jar
3.重新加載javeEE:在build path 中 remove 掉 Java EE * libraris (*是版本數字),然後add libraris--myeclipse libraris -- next 選對應java EE 版本加入;
java.lang.ClassNotFoundException: com.sun.xml.ws.spi.ProviderImpl解決辦法