淘淘商城系列——使用maven tomcat外掛程式啟動web工程

來源:互聯網
上載者:User

標籤:pid   stl   添加   ota   學習   tomcat   das   enter   獨立   

上文我們一起學習了怎樣搭建maven工程,這篇文章我就來教大家一起學習怎樣用tomcat外掛程式來啟動web工程。 
我們把服務層和表現層的工程都建立好了,目前來說,其實真正能啟動並執行就2個,一個是表現層工程——taotao-manager-web,一個服務層工程——taotao-manager。本文先來看錶現層工程,它可以獨立運行,它應該怎麼運行呢?

為何要用maven tomcat外掛程式來啟動web工程?

如果要運行表現層工程,那麼應該在其pom.xml檔案中配置一個maven的tomcat外掛程式,而不是像我們之前那樣在外部的tomcat伺服器上運行。聰明的同學可能會思考,為什麼要使用maven tomcat外掛程式來啟動web工程呢?這是因為在互連網項目中,動輒十幾個甚至好幾十個web工程,如果按照傳統的添加tomcat伺服器的方式來啟動的話,那麼我們為了避免連接埠衝突,每增加一個web工程都要修改三個連接埠,非常麻煩。而使用maven tomcat外掛程式來啟動工程,則只需改一個連接埠即可,顯然簡單了很多。

使用maven tomcat外掛程式啟動web工程

目前來說,表現層工程——taotao-manager-web中的web.xml檔案內容是空的,所以我們應該修改一下,複製以下內容到web.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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"    id="WebApp_ID" version="2.5">    <display-name>taotao-manager-web</display-name>    <welcome-file-list>        <welcome-file>index.jsp</welcome-file>    </welcome-file-list></web-app>

 

為了便於測試,我們在taotao-manager-web工程的webapp目錄下建立一個index.jsp頁面,其內容為:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title></head><body>    <h1>Hello Taotao!</h1></body></html>

 

我如下: 

以上準備工作之後做好之後,我們直奔主題。 
首先在taotao-manager-web工程的pom.xml檔案中配置maven tomcat外掛程式相關內容,如下所示:

<!-- 配置tomcat外掛程式 --><build>    <plugins>        <plugin>            <groupId>org.apache.tomcat.maven</groupId>            <artifactId>tomcat7-maven-plugin</artifactId>            <configuration>                <port>8080</port>                <path>/</path>            </configuration>        </plugin>    </plugins></build>
  • 1

其中<path>/<path>的意思是輸入完localhost:連接埠號碼之後便可以直接訪enter code here問工程首頁了,<port>8080</port>的意思是指定該web工程的訪問連接埠號碼。 
這樣,taotao-manager-web工程整個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>    <parent>        <groupId>com.taotao</groupId>        <artifactId>taotao-parent</artifactId>        <version>0.0.1-SNAPSHOT</version>    </parent>    <groupId>com.taotao</groupId>    <artifactId>taotao-manager-web</artifactId>    <version>0.0.1-SNAPSHOT</version>    <packaging>war</packaging>    <dependencies>        <!-- Spring -->        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-context</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-beans</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-webmvc</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-jdbc</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-aspects</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-jms</artifactId>        </dependency>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-context-support</artifactId>        </dependency>        <!-- JSP相關 -->        <dependency>            <groupId>jstl</groupId>            <artifactId>jstl</artifactId>        </dependency>        <dependency>            <groupId>javax.servlet</groupId>            <artifactId>servlet-api</artifactId>            <scope>provided</scope>        </dependency>        <dependency>            <groupId>javax.servlet</groupId>            <artifactId>jsp-api</artifactId>            <scope>provided</scope>        </dependency>    </dependencies>    <!-- 配置tomcat外掛程式 -->    <build>        <plugins>            <plugin>                <groupId>org.apache.tomcat.maven</groupId>                <artifactId>tomcat7-maven-plugin</artifactId>                <configuration>                    <port>8080</port>                    <path>/</path>                </configuration>            </plugin>        </plugins>    </build></project>

下面我就來使用clean tomcat7:run命令啟動工程,大家要是願意的話,可以跟著我一起做喲! 
在taotao-manager-web工程上右鍵→Run As→Maven build,如所示: 

在Goals輸入框中輸入:clean tomcat7:run,點擊【Apply】和【Run】來運行該web工程。 

這時Eclipse控制台列印如下: 

這說明我們已經使用maven tomcat外掛程式成功啟動web工程了,並沒有報錯。這真是夠幸運的!!! 
啟動完工程了,我們在瀏覽器地址欄中輸入http://localhost:8080來訪問工程。可以看到頁面輸出”Hello Taotao! “,說明我們的web工程成功啟動了! 

最後一點話

我以為我第一次使用maven tomcat外掛程式啟動web工程,肯定會報錯,沒想到這麼順利,搞得我有點受寵若驚。可能也有小夥伴第一次不會像我這樣順利,可能會遇到這樣一個問題——找不到taotao-parent這個工程,而我們要啟動並執行web工程依賴了taotao-parent這個工程。所以我們的web工程要運行,就要找到這個依賴,這個依賴並不是在Eclipse的workspace裡面找,它要到本地倉庫中去找,由於本地倉庫中並沒有taotao-parent的包,那就自然找不到了,找不到了就會報錯了嘛!所以我們應該先把這個taotao-parent工程安裝到本地倉庫,安裝完之後,再啟動。那如何安裝呢?下面是步驟: 
在taotao-parent工程上右鍵,在右鍵菜單中選擇”Run As”,在其子功能表中點擊”Maven install”,如所示: 

打包完之後,我們在本地maven倉庫中可以看到已經有taotao相關包了,如所示。 

雙擊進入taotao,可以看到taotao-parent,如所示。 

要是大家再遇到這種問題,相信大家都能解決了。

淘淘商城系列——使用maven tomcat外掛程式啟動web工程

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.