eclipse建立的項目中webapp下沒有webINF?

來源:互聯網
上載者:User
利用Eclipse建立maven項目並產生META-INF和WEB-INF目錄
1、使用eclipse外掛程式建立一個web project

首先建立一個Maven的Project如下圖 
 
我們勾選上Create a simple project (不使用骨架) 
 
這裡的Packing 選擇 war的形式 
 
由於packing是war包,那麼下面也就多出了webapp的目錄 
2、由於我們的項目要使用eclipse發布到tomcat下面,這裡我們需要先把項目轉成dynamic web project

在我們的項目上點擊右鍵,選擇properties 並找到 Project Facets ,並點擊Convert to faceted form… 如下圖: 
 
然後勾選Dynamic Web Module 並點擊ok 如下圖:(3.0隻有tomcat7才支援, 在部分IDE下面可以繼續切換版本,比如更換到3.1標準的servlet) 

接下來觀察我們的項目結構,多了一個web content目錄 

註: 
1)如果在結構轉換的時候沒有出現Dynamic Web Module選項,可以參考我的上一篇博文。 
2)如果沒有自動產生以上的檔案夾,手動建立的效果是一樣的,無需擔心。 3、雖然此時我們發行就緒到tomcat中,但這不符合maven的結構,我們還要做如下修改

把上圖WebContent下面兩個目錄 META-INF ,WEB-INF 直接剪下到src/main/webapp目錄下,並刪掉WebContent目錄,那麼現在的項目結構如下圖: 

然後我們要修改發布規則,右鍵點擊項目, 選擇 Deployment Assembly 
 
選擇WebContent,把它remove掉,測試類別我們也不需要發布,test的兩個目錄頁可以remove 
 
接著重新指定一個web的路徑,點擊add,選擇Folder – 〉 next 
 
在src下找到webapp目錄,然後finish 
 
最後一步,我們要把當前的build path 指向 Maven Dependency, 直接點擊add,選擇Java Build Path Entries 然後next 

註:只有maven項目添加完Dynamic Web Module之後才能找到Maven Dependency選項。如果沒有找到該選項,說明你建立的Maven項目尚未轉化成web項目。

完成後如下圖: 

註: 
網上流傳的大部分博文中出現的路徑都是如同下文所示的 
/src/main/webapp / 
/src/main/java /WEB-INF/classes 
/src/main/resources /WEB-INF/classes 
Maven Dependencies /WEB-INF/lib

看這種博文我覺得浪費了我很多時間。。搞得我總是想在上圖所示的前面加一個/其實並不是像網上大部分流傳的部落格那樣前面會有//src/main/webapp    /   這一句話已經為我們的WEB項目提供了根路徑,其他的路徑都是基於根路徑的相對路徑。所以無需前面再加 /
1 2 3 4 5

最後附上maven jar包依賴。參考慕課網的 秒殺系統

<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.seckill</groupId>  <artifactId>seckill</artifactId>  <version>0.0.1-SNAPSHOT</version>  <name>seckill</name>  <url>http://maven.apache.org</url>  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  </properties>  <dependencies>    <dependency>      <groupId>junit</groupId>      <artifactId>junit</artifactId>      <version>4.11</version>      <scope>test</scope>    </dependency>    <!-- 補全項目依賴 -->    <!-- 日誌 -->    <dependency>      <groupId>org.slf4j</groupId>      <artifactId>slf4j-api</artifactId>      <version>1.7.12</version>    </dependency>    <dependency>      <groupId>ch.qos.logback</groupId>      <artifactId>logback-core</artifactId>      <version>1.1.1</version>    </dependency>    <dependency>      <groupId>ch.qos.logback</groupId>      <artifactId>logback-classic</artifactId>      <version>1.1.1</version>    </dependency>    <!-- 資料庫相關依賴 -->    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>      <version>5.1.35</version>      <scope>runtime</scope>    </dependency>    <dependency>      <groupId>c3p0</groupId>      <artifactId>c3p0</artifactId>      <version>0.9.1.2</version>    </dependency>     <!-- DAO架構依賴 -->     <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis</artifactId>      <version>3.3.0</version>    </dependency>    <dependency>      <groupId>org.mybatis</groupId>      <artifactId>mybatis-spring</artifactId>      <version>1.2.3</version>    </dependency>    <!-- servlet web相關依賴 -->    <dependency>      <groupId>taglibs</groupId>      <artifactId>standard</artifactId>      <version>1.1.2</version>    </dependency>    <dependency>      <groupId>jstl</groupId>      <artifactId>jstl</artifactId>      <version>1.2</version>    </dependency>    <dependency>      <groupId>com.fasterxml.jackson.core</groupId>      <artifactId>jackson-databind</artifactId>      <version>2.5.4</version>    </dependency>    <dependency>      <groupId>javax.servlet</groupId>      <artifactId>javax.servlet-api</artifactId>      <version>3.1.0</version>    </dependency>    <!-- spring依賴 -->    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-core</artifactId>      <version>4.1.7.RELEASE</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-beans</artifactId>      <version>4.1.7.RELEASE</version>    </dependency>    <dependency>      <groupId>org.springframework</groupId>      <artifactId>spring-context</artifactId>      <version>4.1.7.RELEASE</version

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.