Maven3.2建立webapp項目過程當中問題以及解決方案

  用maven組件來建立web項目,maven的好處一大堆,可是在建立項目的時候問題也不少,諸多不順,網上找了不少資料,貌似都沒能解決問題。java

  環境:jdk1.7.0_80,eclipse4.4,maven3.2.1web

   注意:測試了jdk1.8.0_65,按照一樣的步驟,貌似不能解決問題,若是大家有解決方案,能夠告訴我,謝謝。api

 

   問題一、The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Pathapp

   解決方法:這個是由於沒有javaee的jar包致使,在pom.xml文件裏面加入以下xml片斷便可解決問題eclipse

<!-- 導入java ee jar 包 -->
<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>7.0</version>
</dependency>

  

  問題2、maven建立的webapp項目默認依賴jdk1.5,修改jdk版本webapp

  解決方法:在mavne的安裝目錄找到conf文件夾裏面的settings.xml文件,原文件裏面<profiles></profiles>節點裏面的內容都已經註釋掉,那麼如今在該節點下面添加以下xml片斷maven

<profile>  
        <id>jdk-1.7</id>  
         <activation>  
              <activeByDefault>true</activeByDefault>  
              <jdk>1.7</jdk>  
          </activation>  
        <properties>  
        <maven.compiler.source>1.7</maven.compiler.source>  
        <maven.compiler.target>1.7</maven.compiler.target>  
        <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>  
        </properties>  
    </profile>   
     

  保存以後,在eclipse裏面找到項目文件,右鍵 mavne-->update projects...便可。測試

  

  問題3、cannot change version of project facet Dynamic Web Module to 3.0。ui

  maven建立的webapp項目默認的Dynamic Web Module是2.3版本,因這裏jdk是1.7,我須要修改Dynamic Web Module版本爲3.0或者以上spa

  解決方法:項目右鍵屬性彈出以下窗體

  

  

  A、這個時候先新建一個普通的dynamic web 項目(先建好便可,後面會用到web.xml部份內容),而後找到maven新建的webapp項目webxml文件,修改先後對照

  

  修改以後

   

  具體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"
    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>Archetype Created Web Application</display-name>
</web-app>

 

  B、找項目在磁盤中的位置,接着進入.settings文件裏面,找到org.eclipse.wst.common.project.facet.core.xml這個xml文件,內容以下:

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="jst.web" version="2.3"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
  <installed facet="java" version="1.7"/>
  <installed facet="jst.jaxrs" version="2.0"/>
</faceted-project>

  將<installed facet="jst.web" version="2.3"/>的版本號修改成3.0,而後再在eclipse裏面右鍵maven-->update projects便可。

  

  至此,該web項目沒有任何與maven configration的錯誤,那麼咱們總結一下步驟:

  1、在eclipse4.4配置mavne3.2的時候,在其安裝目錄找到conf文件裏面settings.xml,先初始化jdk以及依賴jdk的版本。

  2、修改項目所在目錄找到.settings-->org.eclipse.wst.common.project.facet.core.xml ,修改jst.web的版本號。

  3、修改項目裏面web.xml裏面web-app的版本號。

  4、在eclipse裏面,項目右鍵mavne-->update projetcs

相關文章
相關標籤/搜索