【发布时间】:2019-03-05 20:05:34
【问题描述】:
我最近添加了 Jersey Jars 用于使用 rest 和 tomcat 无法启动并出现以下错误:
Oct 01, 2018 12:13:11 AM org.glassfish.jersey.internal.inject.Providers checkProviderRuntime
WARNING: A registered provider org.glassfish.jersey.jaxb.internal.JaxbParamConverterBinder is constrained (via @ConstrainedTo) to SERVER runtime but does not implement any provider interface usable in the runtime. Due to constraint configuration problems the provider org.glassfish.jersey.jaxb.internal.JaxbParamConverterBinder will be ignored.
Oct 01, 2018 12:13:12 AM org.apache.catalina.core.ApplicationContext log
SEVERE: StandardWrapper.Throwable
java.lang.NoSuchMethodError: jersey.repackaged.com.google.common.collect.Iterables.concat(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
at org.glassfish.jersey.server.internal.ConfigHelper.getContainerLifecycleListener(ConfigHelper.java:92)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:172)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:363)
at javax.servlet.GenericServlet.init(GenericServlet.java:158)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1230)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1174)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1066)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5370)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5668)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1700)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1690)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
谢谢。
【问题讨论】:
-
使用 Maven ......
-
嗨,Paul,我能够通过移除 Jersey 并使用开箱即用的 resteasy 来解决兼容性问题(基本上是移除罐子和重新连接的罐子)。至于您对 Maven 的建议,我需要在某个阶段将我的项目转换为 Maven 是的。但是现在看起来很难将大 jars 列表转换为具有所有依赖项的工作 POM 文件。对于大多数 jar,我不知道应该添加哪些依赖项。