簡體   English   中英

java.lang.NoClassDefFoundError:javax / activation / DataContentHandler

[英]java.lang.NoClassDefFoundError: javax/activation/DataContentHandler

我正在使用intelliJ IDEA中的Google App Engine和Maven開發一個Webapp。

到目前為止,直到我嘗試使用javax.mail發送電子郵件並得到以下錯誤為止:

java.lang.NoClassDefFoundError: javax/activation/DataContentHandler

我已經將所需的依賴項( javax.activationjavax.mail )放入pom.xml ,仍然發生此錯誤。

一種在本地修復它的方法是在vm選項中添加“ --add-modules java.activation”,當我在本地運行它時,它可以正常工作並發送電子郵件,但是當我部署該應用程序時,它不起作用。

我的問題是,有沒有辦法將vm參數傳遞給maven或其他任何地方,因此在我部署應用程序時它將運行而不會出現錯誤。

還是有其他方法可以做到這一點(是否使用javax.mail )?

我的Java版本是: openjdk 10.0.2

您可以使用docker容器做到這一點。 如何在靈活的GAE應用程序中正確設置JVM選項

由於Maven,您無法為運行時設置VM選項。 通過docker嘗試可能是關鍵。

只需在您的應用程序中包含java.activation模塊即可。

您可以使用較舊的Oracle版本較新的Eclipse版本 ,它們基本上是相同的。

(並且您應該考慮升級到JDK11。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM