0

我正在尝试部署一个使用 resteasy 的静态模块,它作为系统模块预先安装:

[me@localhost:3 modules]$ ls -l system/layers/base/org/jboss/resteasy/resteasy-jaxrs/main/
total 660K
-rw-r--r-- 1 coer2 admin 7.7K Jun  2  2017 async-http-servlet-3.0-2.3.10.Final-redhat-1.jar
-rw-r--r-- 1 coer2 admin 2.1K Mar 27  2015 module.xml
-rw-r--r-- 1 coer2 admin 646K Jun  2  2017 resteasy-jaxrs-2.3.10.Final-redhat-1.jar

但是我尝试引用它失败了。我的模块看起来像:

<?xml version="1.0" ?>

<resources>
    <resource-root path="."/>
    <resource-root path="JWTAUTHENTICATOR-SNAPSHOT.jar"/>
</resources>

<dependencies>
    <module name="org.jboss.resteasy-jaxrs"/>
    <module name="javax.servlet.api"/>
    <module name="javax.security.jacc.api"/>
    <module name="org.jboss.logging"/>
    <module name="org.picketbox"/>
    <module name="org.picketlink.federation"/>
    <module name="org.picketlink.federation.bindings"/>
    <module name="javax.api"/>
    <module name="javax.persistence.api"/>
    <module name="javax.resource.api"/>
    <module name="javax.security.auth.message.api"/>
    <module name="javax.transaction.api"/>
    <module name="javax.xml.bind.api"/>
    <module name="javax.xml.stream.api"/>
    <module name="org.infinispan"/>
    <module name="org.jboss.as.web"/>
    <module name="org.slf4j"/>
</dependencies>

以下生成的日志输出如下所示:

Java HotSpot(TM) 64 位服务器 VM 警告:忽略选项 MaxPermSize=256m;支持已在 8.0 11:47:53,135 错误 [org.jboss.msc.service.fail](MSC 服务线程 1-7)MSC000001:无法启动服务 jboss.web.valve.JWTAUTHENTICATOR:org.jboss.msc。 service.StartException in service jboss.web.valve.JWTAUTHENTICATOR: org.jboss.modules.ModuleNotFoundException: org.jboss.resteasy-jaxrs:main 原因:org.jboss.modules.ModuleNotFoundException: org.jboss.resteasy-jaxrs:main

模块文档中的表 3.1表明这个配置应该足够了,但是之前对静态模块依赖项的经验让我对它没有感到惊讶。

我怀疑这与这个特定模块无关,并且可能缺少resteasy需要的依赖项。不幸的是,jboss 模块文档没有提供这些信息。将不胜感激。

谢谢,罗宾

4

1 回答 1

0

答案是包命名空间映射到目录结构,因此需要将要添加的特定模块附加到包命名空间:

<module name="org.jboss.resteasy.resteasy-jaxrs"/>
于 2018-02-23T14:25:41.843 回答