Maven入门示例(3):自动部署至外部Tomcat



 Maven
入门示例(3):自动部署至外部Tomcat

         上一篇,介绍了如何创建Maven项目以及如何在内嵌的Tomcat中部署测试Web应用,本篇主要介绍如何将开发的应用程序自动部署至外部Tomcat。本例中使用的Tomcat版本为Tomcat 7

 

1、  安装Tomcat 7

1)  Tomcat 7的安装包解压至C:\opensource,并将文件夹重命名为tomcat-7.0.34,得到的目录结构如下



 

 

 

2)  新建系统变量CATALINA_HOME,值为:C:\opensource\tomcat-7.0.34

 

3)  在系统变量  Path的最后面添加%CATALINA_HOME%\lib; %CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar   注意它们之间的分号,一定是英文的分号。

 

4)  Tomcat 7.0的管理员的配置,进入C:\opensource\tomcat-7.0.34Tomcat目录)下的conf目录,编辑tomcat-users.xml,找到最后的:

<!--
<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>

 -->

在上面这段后面  添加上:

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="admin" roles="manager-gui,manager-script"/>
   
红色为添加部分。从中可以看出管理员的用户名和密码!

 

5)  进入Tomcat 目录下的bin目录,双击startup.bat   启动Tomcat  在命令行窗口会出来英文提示。

 

6)  浏览器输入:http://localhost:8080  可以看到Tomcat的欢迎页面就说明配置成功了,点击右上角上manager连接,输入上面配置的用户名和密码,就可以进入管理页面。

 

 

补充: 使用外部的tomcat7 需要使用 tomcat-maven-plugin 的新版本,版本支持tomcat6tomcat7groupId也已经由之前的org.codehaus.mojo改为org.apache.tomcat.maven  可以参考:MavenTomcat插件地址为,http://tomcat.apache.org/maven-plugin.html。无需手动下载,按照本文配置,MyEclipse会自动下载到相应的tomcat-maven-plugin插件

 

2、修改项目的pom.xml  

 

1)在projectbuild节点下 添加tomcat-maven-plugin插件信息,如下写法添加了tomcat6tomcat7的插件,如只用1种可以只写一个

    <plugins> 

        <plugin> 

            <groupId>org.apache.tomcat.maven</groupId> 

            <artifactId>tomcat6-maven-plugin</artifactId> 

            <version>2.0-SNAPSHOT</version>      

            <configuration> 

              <url>http://localhost:8080/manager/html</url>  

              <server>tomcat</server> 

            </configuration>        

        </plugin> 

        <plugin> 

            <groupId>org.apache.tomcat.maven</groupId> 

            <artifactId>tomcat7-maven-plugin</artifactId> 

            <version>2.0-SNAPSHOT</version> 

            <configuration> 

                <url>http://localhost:8080/manager/text</url>  

                <server>tomcat7</server>

                                     <username>admin</username>

<password>admin</password>  

            </configuration> 

        </plugin> 

</plugins> 

--2.0-SNAPSHOT版本已经release

 

2)  project节点下,在插件仓库(plugin repositories)和普通仓库(repositories)中添加以下仓库到pom.xml,保证maven可以从仓库中下载到tomcat-maven-plugin插件,少添加了这段信息,会出现如下报错信息:

No plugin found for prefix 'tomcat' in the current project and in the plug

<repositories>

<repository> 

    <id>people.apache.snapshots</id> 

    <url> 

        http://repository.apache.org/content/groups/snapshots-group/ 

    </url> 

    <releases> 

        <enabled>false</enabled> 

    </releases> 

    <snapshots> 

        <enabled>true</enabled> 

    </snapshots> 

</repository> 

</repositories>

 

<pluginRepositories>

<pluginRepository> 

    <id>apache.snapshots</id> 

    <name>Apache Snapshots</name> 

    <url> 

        http://repository.apache.org/content/groups/snapshots-group/ 

    </url> 

    <releases> 

        <enabled>false</enabled> 

    </releases> 

    <snapshots> 

        <enabled>true</enabled> 

    </snapshots> 

</pluginRepository>

</pluginRepositories>

 

3.配置setting.xml

 

1)修改%MAVEN_HOME%\conf\setting.xml(前提是在myeclipse preferencesmaven启用本地安装版本并设置用户setting.xml为本地conf下的setting.xml)

 

<servers>标签中加入

<server> 

       <id>tomcat7</id> 

       <username>admin</username> 

       <password>admin</password> 

</server> 

注意这里用户名、密码必须为manager-gui角色的用户,这里设置需要与之前tomcat配置时的角色分配对应起来。

 

4.启动tomcat

 

 

运行请先启动tomcat,在maven buildgoals中输入命令tomcat7:deploy即可发布,或在Run Configurations->Maven build新建一个命令,base directory里选择你的web project,在Goals栏可填写你所需要的命令,点击Run或者Debug后,MyEclipse会自动下载所需的插件并在Console启动Tomcat

 

 

 



 

 

 

                 

5、测试

 

打开浏览器,输入http://localhost:8080/helloworld,即可见到发布的Helloworld页面。同时,你也可以在C:\tomcat-7.0.34\webapps看到helloworld工程和helloworld.war包了。

 

 如果点击run后,Console报错,请参见下一篇错误排除

猜你喜欢

转载自yuandingjiema.iteye.com/blog/1752544
今日推荐