Java 无法解析com.sun.jersey.api.view.Viewable,它是从required.class间接引用的
我将球衣版本从1.13升级到了2.25.1。我已将所有包从com.sun.jersey更改为org.glassfish.jersey。应用程序按预期开始工作,但其中一个类抛出了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更新了项目,但同样的错误。少了什么吗 谢谢。这可能不是一个理想的解决方案,但对我来说,解决这个问题的唯一方
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元数据,然后从头开始重新创建它