maven web 專案部署到tomcat 下面無web.xml檔案
阿新 • • 發佈:2019-01-24
發現問題的原因:寫了一個簡單的Spring MVC 專案,web.xml,springmvc.xml 配置都是對的,專案部署到tomcat下面啟動正常,無任何錯誤,但是啟動tomcat 後,通過瀏覽器訪問controller,但是無論如何都無法訪問,tomcat無任何日誌。pom.xml 關於build部分的設定如下:
<build> <finalName>yt-web-cloud-sound</finalName> <sourceDirectory>src/main/java</sourceDirectory> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> <compilerArguments> <verbose /> <bootclasspath>${java.home}/lib/rt.jar;${java.home}/lib/jce.jar</bootclasspath> </compilerArguments> </configuration> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.3</version> <configuration> <warSourceDirectory>webapp</warSourceDirectory> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration> </plugin> </plugins> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> <include>**/*.tld</include> </includes> <filtering>false</filtering> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> <include>**/*.tld</include> </includes> <filtering>false</filtering> </resource> </resources> </build>
這裡:<warSourceDirectory>webapp</warSourceDirectory> 指定了web 的根目錄,然後我再網上搜索說加上:
這裡指定載入web.xml ,但是install 後發現找不到該web.xml,然後我仔細看下了專案結構,發現webapp在src目錄下面,沒有在根目錄下面:<configuration> <warSourceDirectory>webapp</warSourceDirectory> <webXml>webapp/WEB-INF/web.xml</webXml> <failOnMissingWebXml>false</failOnMissingWebXml> </configuration>
接下來我把webapp剪下到專案根目錄下後,再重新install ,一切正常。
這說明按照myeclipse新建的maven web 專案的目錄結構是不對的,需要手動設定專案的結構