Eclipse的:无法罐子的加载到Tomcat的WEB-INF / lib文件夹?(Eclipse

2019-10-22 08:28发布

我得到这个tomcat的错误“抛出java.lang.ClassNotFoundException:org.glassfish.jersey.servlet.ServletContainer”当我使用Eclipse的Tomcat的运行:

我看到日食不包括罐入(Tomcat的7.0)WEB-INF / lib文件夹,不过我想这一点:

  1. 包括在“Web部署大会”在项目属性的Maven依赖。 (Maven的下载在pom.xml的依赖关系,但这些罐子没有获得通过月食拾起)

    如下pom.xml中:

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.dcr.javacode.rest.jersey</groupId> <artifactId>JAXRS-HelloJerseyExample</artifactId> <version>0.0.1-SNAPSHOT</version> <repositories> <repository> <id>maven2-repository.java.net</id> <name>Java.net Repository for Maven</name> <url>http://download.java.net/maven/2/</url> <layout>default</layout> </repository> </repositories> <dependencies> <dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-server</artifactId> <version>2.17</version> </dependency> </dependencies> </project> 

web.xml中,如下所示:

 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>JAXRS-HelloJerseyExample</display-name> <servlet> <servlet-name>JerseyRESTService</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> <init-param> <param-name>jersey.config.server.provider.packages</param-name> <param-value>com.dcr.javacode.rest.jersey</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>JerseyRESTService</servlet-name> <url-pattern>/rest/*</url-pattern> </servlet-mapping> </web-app> 

Answer 1:

两件事情我看错。

  1. 你缺少<packaging>在POM文件中的元素。 如果这是被部署到一个servlet容器,那么包应该是war 。 默认值是jar
  2. 您正在使用jersey-server不具备ServletContainer 。 而是使用jersey-container-servlet

但...

上手新泽西州的最简单方法是使用Maven原型。

在Eclipse:

  1. [ File ]→[ New ]→[ Other ]
  2. [ Maven ]→[ Maven Project ]→ 下一步
  3. 保持默认值(确保“创建一个简单的项目没有被选中 )→ 下一步
  4. 在接下来的对话框中,在“过滤器”字段中,键入jersey-quickstart-webapp 。 这可能需要一些时间来加载所有的原型。 你可以看到原型在IDE的最右下角的一个小进度条加载的进度。 如果您没有看到进度条,也没有搜索结果,则很可能不具备的原型。 在这种情况下,按照第一部分说明这个答案
  5. 选择org.glassfish.jersey.archetypes版本。 它应该默认为最新版本(此时是2.17)→ 下一步
  6. 输入您的groupId,artifactId和包装→ 完成

这应该让你运行球衣首发的应用程序,这将在Tomcat运行



文章来源: Eclipse : Unable to load jar's into the Tomcat WEB-INF/Lib folder ?