2013-01-17 46 views
0

對不起,我是eclipse和java servlets中的新手。 我已閱讀這個問題 Can Eclipse import a Maven Web project as a "Dynamic Web Application"? ,這對我真的很有幫助。將java web maven項目導入到eclipse的正確方法是什麼?

我沒有導入項目作爲現有的Maven項目。 enter image description here

我已經改變了項目方面(但有一些問題,動態Web模塊版本 ,我把它改成2.5), 現在我可以使用選項「在服務器上運行」。 我使用Tomcat 6

但是有一些問題,我的web.xml的位置,在我的導入項目 web.xml文件是root/src/main/webapp/WEB-INF 和eclipse不能找到它在root/WebContent/WEB-INF 這樣一些變化web.xml文件有後被檢測到, 有的Servlet卻出現

enter image description here

,但是當我試圖運行任何servlet,出現類似的錯誤

javax.servlet.ServletException: Wrapper cannot find servlet class com.games.GulliverTravel.servlets.InitializeGameServlet or a class it depends on 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) 
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) 
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    java.lang.Thread.run(Thread.java:680) 
root cause 

java.lang.ClassNotFoundException: com.games.GulliverTravel.servlets.InitializeGameServlet 
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680) 
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) 
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) 
    org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) 
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 
    java.lang.Thread.run(Thread.java:680) 

還有就是我的POM文件

<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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>ProjectName</groupId> 
    <artifactId>ProjectName</artifactId> 
    <packaging>war</packaging> 
    <version>1.0</version> 
    <name>ProjectName Backend</name> 
    <url>http://maven.apache.org</url> 
    <dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>4.8.2</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>servlet-api</artifactId> 
     <version>2.5</version> 
     <scope>compile</scope> 
    </dependency> 
    <dependency> 
     <groupId>com.thoughtworks.xstream</groupId> 
     <artifactId>xstream</artifactId> 
     <version>1.3.1</version> 
     <scope>compile</scope> 
    </dependency> 
    </dependencies> 
    <build> 
    <finalName>ProjectName</finalName> 
    </build> 
</project> 

我不明白爲什麼會發生, 因爲我以前做這個的時候另一臺計算機上一切正常, 它正確導入,沒有一些問題。 請幫幫我。 可以改變web.xml文件的位置嗎? 你有什麼想法如何解決這些roblems?謝謝。

更新: 也從那裏我克隆項目檔案庫沒有項目文件, 只有班,web.xml和POM文件。

回答

0

導入現有Maven項目是正確的選擇IMO

這隻會確保你不要失去你的源/測試文件夾結構,並繼續使用Maven構建。

或者你可以在命令行使用mvn eclipse:eclipse命令,它會爲你生成eclipse特定的文件。

相關問題