一、环境准备
我使用的环境是:Window 10、Tomcat 8.0.36、maven3、tomcat7-maven-plugin 2.2版本。
二、设置环境变量
安装Tomcat8.0.36和maven之后设置环境变量,Tomcat设置环境变量时,key为必须为CATALINA_HOME。
1.设置maven环境变量
MAVEN =D:\Program Files (x86)\JetBrains\IntelliJ IDEA 2016.1.3\plugins\maven\lib\maven3\bin
(我直接引用了InteljiIDEA中的maven)
2、设置TOMACAT环境变量
CATALINA_HOME=E:\tomcat\apache-tomcat-8.0.36
3、将他们添加到PATH中
PATH=%MAVEN%;%CATALINA_HOME%\bin;

三、在Tomcat中配置用户权限
在tomcat的配置文件tomcat_user.xml(%CATALINA_HOME%\conf\tomcat.user.xml)中的< tomcat-users >标签中添加

<role rolename="manager-gui"/>
<role rolename="manager-script"/> <user username="username" password="password" roles="manager-gui,manager-script"/>
  • 1
  • 2
  • 3

四、在Maven的settings.xml配置Server
在Maven的配置文件settings.xml(%MAVEN%\conf\settings.xml)中的< servers > 中加入

<server><id>tomcat8</id> <username>username</username> <password>password</password> </server>
  • 1
  • 2
  • 3
  • 4
  • 5

这里的username 、password就填我们在tomcat中配置的那个用户名,和密码
这里的设置的 id为 tomcat8 我们将在项目的 pom.xml中填写。

五、在项目的pom.xml中配置tomcat7-maven-plugin插件
在< build> 中引入插件:

 <build><pluginManagement><plugins> ... <!-- 配置tomcat 插件 --> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <url>http://localhost:8080/manager/text</url> <server>tomcat8</server> <path>/test</path> <update>true</update> </configuration> </plugin> </plugins> </pluginManagement> ....
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

注意
1、这里的 < server> 中填写的就是为们在%MAVEN%\conf\settings.xml配置中的那个id
即 tomcat8.
2、由于我用的tomcat8这里的< url> 必须配置成 xxx/manager/text否则会部署不成功

3、由于部署时会下载一些东西最还是在 pom.xml 的< project >标签下加入以下代码:

<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>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

六、deploy
1、开启tomcat
2、在pom.xml所在的目录执行 mvn tomcat7:deploy 命令部署项目。

七、遇到的问题
1、在Window系统下执行在执行 mvn tomcat7:undeploy时,会有残留在tomcat目录下
解决方法:在tomcat的配置文件context.xml中 的< Context >标签中添加属性:antiJARLocking=”true” antiResourceLocking=”true”

<Context antiJARLocking="true" antiResourceLocking="true">

一个基本maven项目的pom.xml配置

标签: mavenpom.xml插件配置
2017-01-07 09:03 4886人阅读 评论(1) 收藏 举报

分类:
maven(18)

版权声明:本文为博主原创文章,未经博主允许不得转载。

继续之前创建的test项目,一个基本项目的pom.xml文件,通常至少有三个部分

第一部分,项目坐标,信息描述等

[html] view plaincopy
  1. <modelVersion>4.0.0</modelVersion>
  2. <groupId>com.company.project</groupId>
  3. <artifactId>module</artifactId>
  4. <packaging>war</packaging>
  5. <version>0.0.1-SNAPSHOT</version>
  6. <name>test Maven Webapp</name>
  7. <url>http://maven.apache.org</url>

modelVersion:pom文件的模型版本

关于group id和artifact id,为了便于多人多模块协同开发管理(以后会讲),建议使用以下命名规范

group id:com.公司名.项目名

artifact id:功能模块名

packaging:项目打包的后缀,war是web项目发布用的,默认为jar

version:     artifact模块的版本

name和url:相当于项目描述,可删除

group id + artifact id +version :项目在仓库中的坐标

第二部分,引入jar包

[html] view plaincopy
  1. <dependencies>
  2. <dependency>
  3. <groupId>junit</groupId>
  4. <artifactId>junit</artifactId>
  5. <version>3.8.1</version>
  6. <scope>test</scope>
  7. </dependency>
  8. </dependencies>

这是创建项目时自动生成的,将junit-3.8.1.jar引入到项目中。

dependency:引入资源jar包到本地仓库,要引入更多资源就在<dependencies>中继续增加<dependency>

group id+artifact id+version:资源jar包在仓库中的坐标

scope:作用范围,test指该jar包仅在maven测试时使用,发布时会忽略这个包。需要发布的jar包可以忽略这一配置

刚开始本地仓库是空的,maven会从远程仓库自动下载这个jar到本地仓库,下载完后,就可以在项目中使用这个jar了

如果将<dependency>的内容删除,junit-3.8.1.jar也会自动消失,无法使用

第三部分,构建项目

[html] view plaincopy
  1. <build>
  2. <finalName>helloworld</finalName>
  3. <plugins>
  4. <plugin>
  5. <groupId>org.apache.maven.plugins</groupId>
  6. <artifactId>maven-compiler-plugin</artifactId>
  7. <version>3.5.1</version>
  8. <configuration>
  9. <source>1.7</source>
  10. <target>1.7</target>
  11. </configuration>
  12. </plugin>
  13. <plugin>
  14. <groupId>org.apache.maven.plugins</groupId>
  15. <artifactId>maven-resources-plugin</artifactId>
  16. <version>3.0.1</version>
  17. <configuration>
  18. <encoding>UTF-8</encoding>
  19. </configuration>
  20. </plugin>
  21. </plugins>
  22. </build>

build:项目构建时的配置

finalName:在浏览器中的访问路径,如果将它改成helloworld,再执行maven--update,这时运行项目的访问路径是

http://localhost:8080/helloworld/   而不是项目名的  http://localhost:8080/test

plugins:插件,之前篇章已经说过,第一个插件是用来设置java版本为1.7,第二个插件是我刚加的,用来设置编码为utf-8

group id+artifact id+version:插件在仓库中的坐标

configuration:设置插件的参数值

 

转载于:https://www.cnblogs.com/zhangtan/p/7649394.html

使用tomcat7-maven-plugin部署Web项目相关推荐

  1. Maven 热部署Web项目

    使用maven的自动部署功能可以很方便的将maven工程自动部署到远程tomcat服务器,节省大量时间. 本文章适用于tomcat的 9.x版本. 1.配置tomcat的manager 编辑tomca ...

  2. 关于Maven打包Java Web项目以及热部署插件Jrebel的使用

    Java Web/Eclipse/Maven/Tomcat 最近有个新项目是java web项目,记录一下,可能比较乱.虽然没接触过Java,但是eclipse还是用过的 初识项目 同事说,项目是ma ...

  3. eclipse+maven远程(自动)部署web项目到tomcat

    [转自] http://blog.csdn.net/dhmpgt/article/details/11197995 eclipse集成maven后可以用maven命令把web项目自动部署到tomcat ...

  4. Maven-EclipseEE使用Maven构建Java web项目从0到1

    Maven是什么 安装Maven 解压apache-maven-350-binzip 新建变量M2_HOME配置Maven主目录 在 Path 变量中添加 Maven的bin目录 命令窗口mvn -v ...

  5. myeclipse java maven web 项目结构,Myeclipse 10 Maven 构建 Java Web 项目

    下载 Maven http://maven.apache.org/download.cgi,解压到任意非C盘位置,比如:D:\Java\apache-maven-3.1.0 打开 Myeclipse ...

  6. Jenkins部署Web项目到远程tomcat

    原网址:http://blog.sina.com.cn/s/blog_b5fe6b270102v7xi.html 之前讲到的是如何构建一个项目,并且将代码进行编译.打包,那么打包完成最后的结果就需要发 ...

  7. Jenkins部署Web项目到远程tomcat(通过jenkins插件)

    之前讲到的是如何构建一个项目,并且将代码进行编译.打包,那么打包完成最后的结果就需要发布到应用服务器,将项目部署成功.在之前的项目中我们采用的shell脚本来部署,下面讲解通过Jenkins部署web ...

  8. 部署Web项目 (Linux)

    部署Web项目 -- Linux 一.Linux 环境搭建 二.Linux 常用命令 三.搭建 Java 部署环境 3.1 JDK 3.2 Tomcat 3.3 MySQL 四.部署 Web 项目 4 ...

  9. 怎样linux部署web应用程序,Linux系统部署WEB项目(2020最新最详细)

    2020最新Linux系统发行版ContOS7演示部署WEB项目 为防止操作权限不足,建议切换root用户,当然如果你对Linux命令熟悉,能够自主完成权限更新操作,可以不考虑此推荐. 更多命令学习推 ...

  10. 搭建java部署环境以及部署Web项目到Linux

    系列文章目录 Linux 环境搭建以及xshell远程连接_crazy_xieyi的博客-CSDN博客 Linux常用命令详解_crazy_xieyi的博客-CSDN博客 Linux权限_crazy_ ...

最新文章

  1. udacity 项目同学解决方案
  2. Android 数据库基本操作-2
  3. 【数据挖掘】神经网络 后向传播算法( 向后传播误差 | 输出层误差公式 | 隐藏层误差公式 | 单元连接权值更新公式 | 单元偏置更新公式 | 反向传播 | 损失函数 | 误差平方和 | 交叉熵 )
  4. swift perfect mysql_服务端写Swift体验 (Perfect框架)
  5. 【转】3D图形引擎(DX9): FX
  6. linux 高性能服务排查方式
  7. 24/100. Linked List Cycle
  8. 人工智能(13)---智能锁
  9. 3d相册 html 代码_女朋友生日,我送她网页相册,她感动的哭了(文中有惊喜)...
  10. MySql使用TEXT/BLOB类型的几点注意
  11. ubuntu下vscode编写cgo程序
  12. spider RPC过滤器
  13. 哈佛结构 Linux,哈佛结构与冯诺依曼结构区别
  14. Linux_Tips
  15. 基于Java的酒店管理系统论文
  16. 佳文分享:我个人比较受用的一些习惯
  17. 假期观察:家乡的、身边的真实互联网
  18. 线性代数考研笔记(一)
  19. tomcat同时部署两个项目的问题
  20. 虹软:中小企业该如何拥抱 AI

热门文章

  1. 为什么说 80% 的程序员都缺乏基本功?
  2. 国内外优秀音视频博客索引(持续更新)
  3. mysql 存储过程 树结构_mysql 树形存储过程
  4. mysql修改视图语句alter_MySQL修改视图(ALTER VIEW)
  5. python创建gui界面_你要的 Python 创建 GUI 用户界面程序,来咯
  6. python 实现两个excel表格数据的对比
  7. python画哆啦a梦图片_画了个多啦A梦,但是感觉怪怪的
  8. python输出结果换行_如果Python中有很多换行,可以选择使用...表示多行内容...
  9. pytorch tensor_Pytorch之Tensor操作
  10. windows下phpstorm的高效使用