在enum javax.ws.rs.core.Response.Status.Family中找不到状态$ Family

时间:2013-04-11 09:01:23

标签: java jersey jdeveloper jsr311

我正在使用JDeveloper 10g进行一个项目(是的,想象一下) 该项目包括用Jersey开发RESTful Web服务 令我发疯的是,每当我使用javax.ws.rs.core.Response时,我在尝试构建项目时都会遇到此错误:

Error: Status$Family not found  in enum javax.ws.rs.core.Response.Status.Family

我在java.net找到了这个帖子。正如保罗所说,我认为这将是一些版本冲突(jre 5)。所以我降级到泽西岛1.2,并按照建议使用了jsr311-api-111.jar,但没有机会。
有谁想知道如何解决这个问题? PS:同样的项目,可以在JDeveloper 11g中构建好。

3 个答案:

答案 0 :(得分:1)

在编译器下的JDEV 10g项目属性中,选中Use Javac框。 Make in JDEV 10g的默认编译器是ojc,这会干扰jsr311。它将使用javac进行编译。

答案 1 :(得分:0)

您指的是JSR-311 API

https://jsr311.java.net/nonav/javadoc/index.html?javax/ws/rs/core/Response.Status.Family.html

您可以在https://jsr311.java.net/

中找到该jar

用旧版本替换新jar以解决此问题。祝你好运!

答案 2 :(得分:0)

在我的情况下,我在代码中使用了完全限定名,而不是导入类

javax.ws.rs.core.Response.ResponseBuilder builder = 
                javax.ws.rs.core.Response.status(javax.ws.rs.core.Response.Status.OK);
javax.ws.rs.core.Response response