Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法解析com.sun.jersey.api.view.Viewable,它是从required.class间接引用的_Java_Jersey - Fatal编程技术网

Java 无法解析com.sun.jersey.api.view.Viewable,它是从required.class间接引用的

Java 无法解析com.sun.jersey.api.view.Viewable,它是从required.class间接引用的,java,jersey,Java,Jersey,我将球衣版本从1.13升级到了2.25.1。我已将所有包从com.sun.jersey更改为org.glassfish.jersey。应用程序按预期开始工作,但其中一个类抛出了com.sun.jersey.view.Viewable。无法解析该类,它是从required间接引用的。类错误。可视类出现在较旧版本的jersey中,我不再引用它,但为什么会出错呢?我已经清理了项目,并通过Maven更新了项目,但同样的错误。少了什么吗 谢谢。这可能不是一个理想的解决方案,但对我来说,解决这个问题的唯一方

我将球衣版本从1.13升级到了2.25.1。我已将所有包从com.sun.jersey更改为org.glassfish.jersey。应用程序按预期开始工作,但其中一个类抛出了
com.sun.jersey.view.Viewable。无法解析该类,它是从required间接引用的。类
错误。可视类出现在较旧版本的jersey中,我不再引用它,但为什么会出错呢?我已经清理了项目,并通过Maven更新了项目,但同样的错误。少了什么吗


谢谢。

这可能不是一个理想的解决方案,但对我来说,解决这个问题的唯一方法是添加较低版本的jersey罐子。正如我所说,这不是正确的方法,因为现在我的类路径中有两个版本的Jersey罐子

我们必须仔细地构建项目并测试所有服务,以确保它们按预期工作,因为如果有两个版本的JAR,我们会混淆应该选择什么


在这种情况下,通常第三方api会中断,因为您没有提供某些接口或抽象类的实现,这些接口或抽象类不在最新版本中,但编译器引用较低版本并查找实现。因此,我一点也不喜欢这种方法。

这可能不是一个理想的解决方案,但对我来说,解决这个问题的唯一方法是添加较低版本的jersey罐子。正如我所说,这不是正确的方法,因为现在我的类路径中有两个版本的Jersey罐子

我们必须仔细地构建项目并测试所有服务,以确保它们按预期工作,因为如果有两个版本的JAR,我们会混淆应该选择什么


在这种情况下,通常第三方api会中断,因为您没有提供某些接口或抽象类的实现,这些接口或抽象类不在最新版本中,但编译器引用较低版本并查找实现。因此,我一点也不喜欢这种方法。

你应该发布所有stacktraceThere不是stacktrace davidxxx,因为应用程序启动时没有任何错误。此错误是类的编译时错误。看起来像是IDE问题。如果你从命令行使用Maven编译,你有问题吗?我已经尝试过了,它可以工作。也许你应该删除项目中的Maven元数据,然后从Scratch中重新创建它。你应该发布所有stacktraceThere不是stacktrace davidxxx,因为应用程序启动时没有任何错误。此错误是类的编译时错误。看起来像是IDE问题。如果您从命令行使用Maven进行编译,您有问题吗?我已经尝试过了,而且效果很好。也许您应该删除项目中的Maven元数据,然后从头开始重新创建它