其实maven项目部署到tomcat的方式很多,我从一开始的打war包到tomcat/webapps目录,到使用tomcat-maven插件,到直接使用servers部署,一路来走过很多弯路。

下面就一一介绍这几种部署方式:

1.打war包到tomcat/webapps目录

这种方式其实跟非maven项目没什么区别,就是打包的方式不同

之后在target目录下会生成war包,复制到tomcat/webapps目录即完成部署。

2.使用tomcat-maven插件,在pom.xml的</dependencies>之后添加以下代码,并做相应修改

 1   <build>
 2     <finalName>guoguo-maven-web</finalName>
 3     <plugins>
 4       <plugin>
 5           <!-- 3个可用插件 -->
 6         <groupId>org.apache.tomcat.maven</groupId>
 7         <artifactId>tomcat6-maven-plugin</artifactId>                    <!-- 命令为tomcat6:redeploy -->
 8         <!-- <groupId>org.apache.tomcat.maven</groupId> -->
 9         <!-- <artifactId>tomcat7-maven-plugin</artifactId> -->    <!-- 命令为tomcat7:redeploy -->
10         <!-- <groupId>org.codehaus.mojo</groupId> -->
11         <!-- <artifactId>tomcat-maven-plugin</artifactId> -->        <!-- 命令为tomcat:redeploy -->
12         <!-- <version>2.2</version> -->
13       <configuration>
14           <!-- <url>http://localhost:8080/manager</url> -->            <!-- tomcat6部署管理路径 -->
15           <url>http://localhost:8080/manager/text</url>                <!-- tomcat7部署管理路径 -->
16           <username>admin</username>                                <!-- tomcat的管理员账号 -->
17           <password>admin</password>
18           <port>8080</port>
19           <path>/guoguo-maven-web</path>                            <!-- 部署路径 -->
20           <charset>UTF-8</charset>
21           <encoding>UTF-8</encoding>
22           <!-- 运行redeploy命令前,要能正常访问http://localhost:8080/manager-->
23       </configuration>
24       </plugin>
25   </plugins>
26   </build>

这样就配置好了tomcat maven插件

运行redeploy命令前,要启动tomcat,并能正常访问http://localhost:8080/manager

通过项目右键 run as --> maven build... --> main --> goals 中填入 tomcat6:redeploy命令即可部署成功,这样部署有时会使tomcat出错,出错需要重启tomcat

3.直接使用servers部署

首先确保编译配置正常

test下的目录编译到target/test-classes,其他编译到target/classes目录即可,其他一般默认不需要改变什么

然后进行部署的配置:

配置好之后,通过右键servers中tomcat,add and remove...添加项目,重启tomcat即可

第一种我已经不用了,第二种适合直接部署到测试服务器,第三种适合本地的调试

附录:

tomcat管理员配置,在servers项目的tomcat-users.xml中添加如下配置,如果你是直接使用bin/startup.bat启动tomcat,则修改conf/tomcat-users.xml

----------tomcat6管理员配置----------
<role rolename="manager"/>
<user username="admin" password="admin" roles="manager"/>
----------tomcat6管理员配置----------

----------tomcat7管理员配置----------
<role rolename="manager-script" />
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui,manager-script"/>
----------tomcat7管理员配置----------

[转]maven项目部署到tomcat的更多相关文章

  1. eclipse中maven项目部署到tomcat

    其实maven项目部署到tomcat的方式很多,我从一开始的打war包到tomcat/webapps目录,到使用tomcat-maven插件,到直接使用servers部署,一路来走过很多弯路. 下面就 ...

  2. eclipse中maven项目部署到tomcat [转]

    其实maven项目部署到tomcat的方式很多,我从一开始的打war包到tomcat/webapps目录,到使用tomcat-maven插件,到直接使用servers部署,一路来走过很多弯路. 下面就 ...

  3. maven项目部署到Tomcat

    1.安装Tomcat,地址:http://tomcat.apache.org,我安装的版本为9.0.0.M22,安装的目录为C:\apache-tomcat,设置环境变量CATALINA_HOME为C ...

  4. maven项目部署到tomcat方法

    今天记录下,maven项目部署到服务器的过程 1.首先在ide中里将自己的maven项目打包 mvn clean install 2. 看是否需要修改war包的名字,如果要修改,就用命令 mv xxx ...

  5. 有关使用Maven常见问题总结(Eclipse中使用Maven、Maven项目部署到tomcat等问题)

    http://blog.csdn.net/sunitjy/article/details/42709311 ********************************************** ...

  6. 多MAVEN项目部署到tomcat中_之使用DBUG进行单步调试

    1.改成你想localhost:8080默认进入的目录 这个步骤会造成 code\.settings\org.eclipse.wst.common.component 文件的更改<propert ...

  7. Eclipse上将maven项目部署到tomcat,本地tomcat下,webapps下,web-inf下lib下没有jar包决绝方案

    右键项目选择properties  ,选择Deployment Assembly  , 右边点击Add 然后选择  Java Build Path Entries ,,,next  ,  选择Mave ...

  8. eclipse中的maven项目部署到tomcat中

    http://www.cnblogs.com/guodefu909/p/4874549.html

  9. maven项目部署到tomcat中没有classe文件的问题汇总

    1.修改生成的class文件的位置

随机推荐

  1. unity3d 自定义载入条/载入动画

    在 Assets 下新建文件夹 WebGLTemplates , 在 WebGLTemplates 文件夹下新建文件夹 MyTemplate, 新建index. 在 PlayerSetting 中的 ...

  2. python split 与join

    1.string.join (saq):以string 为分隔符,将seq中所有的元素(字符串表示"")合并成一个新的字符串 2.string.split(str="&q ...

  3. ShellExecute

    有三个API函数可以运行可执行文件WinExec.ShellExecute和CreateProcess. 1.CreateProcess因为使用复杂,比较少用. 2.WinExec主要运行EXE文件. ...

  4. GoWeb开发_Iris框架讲解(一)

    Golang介绍 Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软 ...

  5. 2017 Fzu校赛 [Cloned]

    A - Salty Fish 海边躺着一排咸鱼,一些有梦想的咸鱼成功翻身(然而没有什么卵用),一些则是继续当咸鱼.一个善良的渔夫想要帮这些咸鱼翻身,但是渔夫比较懒,所以只会从某只咸鱼开始,往一个方向, ...

  6. LCS最大公共子序列【转载】

    在两个字符串中,有些字符会一样,可以形成的子序列也有可能相等,因此,长度最长的相等子序列便是两者间的最长公共字序列,其长度可以使用动态规划来求. 以s1={1,3,4,5,6,7,7,8},s2={3 ...

  7. SublimeText3 snippet 编写总结

    SublimeText3 snippet 编写总结 SublimeText的snippet定义功能也十分强大, 类似VAssist. 在菜单tool->New Snippet中定义.  打开后显 ...

  8. 实验一 用户界面与Shell命令

    一.实验课时:2学时 二.实验目的 v  熟悉redhat_linux的用户界面,会进行常用的系统设置. v  掌握常用的shell命令. 三.实验环境 v  运行Windows xp\2000\20 ...

  9. Python面向对象之魔法方法/双下方法

    1.__new__ and __init__ 这两个方法都是在实例化的时候执行,__new__ 在 __init__ 之前执行,并且 如果实例化的时候封装属性,__new__也是必须要传的,而且__n ...

  10. Ionic中基于js的扩展(指令和服务)来实现各种效果

    1.ion-header-bar ion-footer-bar ion-content align-title='left/ritght/center <body> <ion-hea ...