Java jar中不包括jersey media json jackson
我尝试在NetBeans中构建maven项目。在项目中,我使用jersey media json jackson。我的依赖项是这样的Java jar中不包括jersey media json jackson,java,json,maven,Java,Json,Maven,我尝试在NetBeans中构建maven项目。在项目中,我使用jersey media json jackson。我的依赖项是这样的 <dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-json-jackson</artifactId> <version>2.23.1</versi
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>2.23.1</version>
</dependency>
当我评论jersey media json jackson依赖项时,IDE中会出现相同的异常
pom.xml中的我的构建块
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.ats.test.App</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
maven汇编插件
com.ats.test.App
带有依赖项的jar
组装
包裹
单一的
如何解决我的问题?这可能是因为Jersey自动发现和注册功能的方式。将所有内容放入胖罐子可能会导致自动发现和注册出现问题,您可能需要手动执行 请参考一个非常类似的问题的答案,仅在您的情况下,注册Jersey的Jackson功能的声明可能是
jerseyServlet.setInitParameter(
"jersey.config.server.provider.classnames",
"org.glassfish.jersey.jackson.JacksonFeature");
我希望您运行的是带有依赖项的
jar,而不是生成的默认jar。谢谢!你的链接很有帮助。使用maven shade插件修复了我的问题。
jerseyServlet.setInitParameter(
"jersey.config.server.provider.classnames",
"org.glassfish.jersey.jackson.JacksonFeature");