簡體   English   中英

WildFly服務模塊加載程序-jdk.incubator.http.HttpClient上的ClassNotFound

[英]WildFly Service Module Loader - ClassNotFound on jdk.incubator.http.HttpClient

我將WildFly15與JDK 10結合使用,以使用新的HTTP Client構建應用程序,當我將jdk.incubator.httpclient聲明為jdk.incubator.httpclient中的唯一需求時,它可以正常工作。 (我不能去JDK11,因為我們需要以32位運行)。

這是包含兩組值的完整命令行(我從Eclipse復制了它):

Program arguments:
-mp "D:\ambientes\oboticario\itsmconn2\wildfly-15.0.0.Final\modules" org.jboss.as.standalone -b localhost --server-config=standalone-full.xml -Djboss.server.base.dir=D:\ambientes\oboticario\itsmconn2\wildfly-15.0.0.Final\standalone

VM Arguments:
"-Dprogram.name=JBossTools: WildFly 15 at localhost" -server -Xms64m -Xmx512m -Dorg.jboss.resolver.warning=true -Djava.net.preferIPv4Stack=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true "-Dorg.jboss.boot.log.file=D:\ambientes\oboticario\itsmconn2\wildfly-15.0.0.Final\standalone\log\boot.log" "-Dlogging.configuration=file:D:\ambientes\oboticario\itsmconn2\wildfly-15.0.0.Final\standalone\configuration\logging.properties" "-Djboss.home.dir=D:\ambientes\oboticario\itsmconn2\wildfly-15.0.0.Final" -Dorg.jboss.logmanager.nocolor=true -Djboss.bind.address.management=localhost --add-modules jdk.incubator.httpclient 

我正確地添加--add-modules jdk.incubator.httpclient到JVM開始。

module mymodule {
    requires jdk.incubator.httpclient;
    //requires javaee.api;
}

但是,當我刪除javaee.api模塊的注釋並將其作為要求添加時,我得到ClassNotFoundException

module mymodule {
    requires jdk.incubator.httpclient;
    requires javaee.api;
}

由於我在EJB中使用HTTP客戶端API,這可能是javaee.api中斷構建的原因嗎? 如何解決?

Caused by: java.lang.ClassNotFoundException: jdk.incubator.http.HttpClient from [Module "deployment.sdi.war" from Service Module Loader]
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:255)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
    ... 18 more

使用選項use --show-module-resolution啟動java確認模塊已加載:

...
root jdk.incubator.httpclient jrt:/jdk.incubator.httpclient
...

and also after this WildFLy prints the message: WARNING: Using incubator modules: jdk.incubator.httpclient

這似乎是WildFly中的錯誤。 我們決定使用具有64位平台的新虛擬機,並遷移到JDK11。

暫無
暫無

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

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