我在JBOSS AS 5.1中运行MAVEN应用程序,该应用程序具有jersey-server依赖性。这是依赖项的pom.xml条目。
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
<scope>runtime</scope>
</dependency>
简单,对吧?这是我的项目web.xml,它指向此jar中存在的Servlet容器。
<servlet>
<servlet-name>JerseyAPI</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>edu.emory.clinical.trials.api</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>JerseyAPI</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
虽然服务器启动正常,但当我尝试命中配置的@Path时,ClassNotFoundException
获得com.sun.jersey.spi.container.servlet.ServletContainer
。我正在使用Eclipse作为我的IDE,我可以清楚地看到该类是在maven存储库依赖项结构(.m2 / repository / com / sun / jersey / ...)中生成的。
我对Maven有点新鲜,所以我确信必须有一些我缺少的基本功能,但是看起来JBOSS没有认识到我在POM中声明的项目的运行时依赖性。任何建议将不胜感激。
答案 0 :(得分:0)
我相信<scope>runtime</scope>
将是你的问题。查看<scope>
代码。