用Eclipse 建立一個 簡單的 Maven JavaWeb 項目

 

使用Maven 建立一個簡單的 javaWeb 項目:html

本篇屬於 建立 JavaWeb 項目的第三篇: 建議閱讀本篇以前 閱讀 用 Eclipse 建立一個簡單的web項目  ;本篇是這這篇文章的基礎上 進行的.java

步驟:web

1:  在新建嚮導中選擇: Maven Project apache

 點擊下一步  這裏先選擇 不使用 骨架 api

 補充 公司Id 和 項目 id 以及選擇 打包方式 : war 瀏覽器

 點擊完成後的項目框架:tomcat

先看一下 項目屬性: 右擊屬性: 選擇 web deployment Assmbly   先查看一下 項目部署路徑: app

這時候 發現報錯了 : 點進去看看 報什麼錯:框架

web.xml  is missing and <failOnMissingWebXml> is set to true :意思是:  web.xml 缺失了; 可是 failOnMissingWebXml  被設置是 true  ; webapp

這個錯誤有兩種解決方案:  一種是 把缺失的web.xml 給補回來; 一種是 設置 <failOnMissingWebXml>  爲 false  

一個web項目  一定少不了 web.xml 因此 我們的解決方案就是 把 缺失的web.xml 給 補回來.

怎樣補回來? 就是把 目前的項目 轉換成 動態的web項目就Ok 了;

右擊屬性後 選擇項目構面:   作這一步目的是把項目轉換成爲動態web項目: 把丟失的web.xml給補回來;

1;  第一步先選擇  JDK 版本 和 javaScrpit  版本  :  點擊 應用 和 肯定 

 

2: 再次點擊屬性 項目構面  選擇 Dynamic Web Module : 若是tomcat 版本是 7.0  則選 3.0  ; tomcat 8/8+ 選 3.1 ; tomcat 6/6- 選 3.0- ;

下面還有一個進一步配置:  詢問 要不要 建立 自動生成 web.xml 這裏最好選擇要  否則還得本身手動建立;

點擊肯定以後 再看一下 項目 結構:

1:多了一塊: webContent

2:  不報錯了; webContent 目錄下面是否是有 web.xml 文件;

3: 若是 你的沒有出現 webContent 目錄 ;必定要上面的步驟;先選擇JDK和 Javascript 版本 肯定以後再選擇 dynamic web module  版本 ; 

由於 dynamic web module  是依賴於 JDK 版本的;

 此時 再看一下 項目部署路徑:

右擊屬性:  web  dployment Assembly :

是否是 發現項目部署路徑變化了?  以前的webapp 路徑是否是沒有了? 猜一下這說明什麼?

1: webapp  和 webContent  是起相同做用的 只保留一個就OK了; 通常都是保留 webapp  (我我的以爲一方面緣由是這樣的目錄結構看着更順眼吧)

 因此 下一步的工做就是1: 修該項目結構目錄(webapp 和 webContent 只保留一個,通常都是保留 webapp); 2:修改web deployment assembly  中的部署路徑;

 將 webContent 目錄下面的內容 拷貝至 webapp下面;並刪除 webContent 目錄;

 配置web deployment 路徑 :

先 刪除test 和 webContent 目錄;

再添加:選擇 webapp目錄

 再看一下 完成後的目錄結構: 若是 pom.xml 報錯; 把裏面的pom.xml 剪貼 再 粘貼一下 就OK了;

至此 項目的結構目錄算是搭建好了;

接下來 修改 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.etoak</groupId>
  <artifactId>mjw01</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>
  
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>

        <!-- javaEE -->
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>7.0</version>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>7.0</version>
        </dependency>

        <!-- servlet start -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <!-- servlet end -->
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <skipTests>true</skipTests>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
        <finalName>mjw01</finalName>  <!--  這裏是 項目名 -->
    </build>
</project>

再接下來 再webapp 下面 新建一個index.jsp 頁面 ( 注意 不能建到 WEB-IBF 目錄下面 , 由於這個目錄下面的文件 是不能經過 地址欄的路徑直接訪問到的;)

 

最後就剩測試了 ;來 輸入 在瀏覽器地址欄 輸入 項目路徑試試 :  http://http://localhost:8080/mjw01/  

是否是 OK了?

相關文章
相關標籤/搜索