使用 jackson2 modulenotfound
using jackson2 modulenotfound
我正在尝试将 jackson2 与 RestEasy 一起使用,添加了所有必需的依赖项并将依赖项标记为 "provided" 以避免与 JBOSS 内置库发生冲突。
POM XML:
<!-- resteasy start -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.0.13.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson2-provider</artifactId>
<version>3.0.13.Final</version>
<scope>provided</scope>
</dependency>
<!-- resteasy end -->
<!-- jackson imports starts -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-base</artifactId>
<version>2.4.1</version>
</dependency>
<!-- jackson import ends -->
Deployment structure :
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-jackson-provider" />
</exclusions>
<dependencies>
<module name="org.jboss.resteasy.resteasy-jackson2-provider" services="import" />
</dependencies>
</deployment>
</jboss-deployment-structure>
但是当我尝试启动服务器时,JBOSS 模块无法找到所需的库并失败 exception.If 部署结构 xml 不存在 json 转换工作正常,但忽略了许多 jackson2 属性。
异常:
org.jboss.modules.ModuleNotFoundException: org.jboss.resteasy.resteasy-jackson2-provider:main
在 org.jboss.modules.Module.addPaths(Module.java:1050) [jboss-modules.jar:1.3.3.Final-redhat-1]
我试过没有 Scope as 'provided' 也仍然无法启动容器。
JBOSS 版本:JBoss EAP 6.2.4.GA (AS 7.3.4.Final-redhat-1)
任何见解都非常有用
谢谢
您可以将所需的jar 放在modules\system\layers\base\org\\main 中您自己的模块文件夹中,并通过jboss-deployment-descriptor.xml
引用它
基本上只需从您的 .m2 文件夹中复制所需的 jar 并将其提供给 jboss 服务器以在运行时解决依赖关系。或者,您也可以尝试将运行时范围添加到项目 POM 中所需的 jar。
我正在尝试将 jackson2 与 RestEasy 一起使用,添加了所有必需的依赖项并将依赖项标记为 "provided" 以避免与 JBOSS 内置库发生冲突。
POM XML:
<!-- resteasy start -->
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.0.13.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jackson2-provider</artifactId>
<version>3.0.13.Final</version>
<scope>provided</scope>
</dependency>
<!-- resteasy end -->
<!-- jackson imports starts -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-base</artifactId>
<version>2.4.1</version>
</dependency>
<!-- jackson import ends -->
Deployment structure :
<jboss-deployment-structure>
<deployment>
<exclusions>
<module name="org.jboss.resteasy.resteasy-jackson-provider" />
</exclusions>
<dependencies>
<module name="org.jboss.resteasy.resteasy-jackson2-provider" services="import" />
</dependencies>
</deployment>
</jboss-deployment-structure>
但是当我尝试启动服务器时,JBOSS 模块无法找到所需的库并失败 exception.If 部署结构 xml 不存在 json 转换工作正常,但忽略了许多 jackson2 属性。
异常:
org.jboss.modules.ModuleNotFoundException: org.jboss.resteasy.resteasy-jackson2-provider:main 在 org.jboss.modules.Module.addPaths(Module.java:1050) [jboss-modules.jar:1.3.3.Final-redhat-1]
我试过没有 Scope as 'provided' 也仍然无法启动容器。
JBOSS 版本:JBoss EAP 6.2.4.GA (AS 7.3.4.Final-redhat-1)
任何见解都非常有用
谢谢
您可以将所需的jar 放在modules\system\layers\base\org\\main 中您自己的模块文件夹中,并通过jboss-deployment-descriptor.xml
引用它基本上只需从您的 .m2 文件夹中复制所需的 jar 并将其提供给 jboss 服务器以在运行时解决依赖关系。或者,您也可以尝试将运行时范围添加到项目 POM 中所需的 jar。