学习如何使用Maven,我推荐一本工具书,《maven the definitive guide》。在这本工具书手中,详细介绍了maven的使用思想,并且提供了从基本到复杂的具体项目应用。本文介绍maven在ubuntu系统下的安装配置使用。关于Tomcat的安装配置方法,请参看安装配置Nginx作为Apache和Tomcat的前端服务器。在安装好Maven之后,我会分别介绍如何在Maven和Tomcat端进行相应的配置,让Maven有权利访问Tomcat服务器,并部署Web应用。最后,我会展示如何在pom中配置tomcat maven plugin. 这个配置是通用的,你可以复制粘贴在任何你需要部署的项目中。

安装Maven

使用以下命令下载maven.

  1. wget http://www.gtlib.gatech.edu/pub/apache/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz

解压,重命名,放到一个你喜欢的地方。

  1. tar xvzf apache-maven-3.0.5-bin.tar.gz
  2. sudo mv apache-maven-3.0.5 /opt/maven3
  3. sudo chown -R root:root /opt/maven3

使用下面的命令让你的系统知道它

  1. sudo ln -s /opt/maven3/bin/mvn /usr/bin/mvn

之后,在/etc/environment或者你~/.bashrc文件中加入MAVEN_HOME变量。这里把它放在/etc/enviroment文件中,添加MAVEN_HOME="/opt/maven3",使用下面的命令让MAVEN_HOME变量生效,并验证maven是否安装成功。

  1. source /etc/enviroment
  2. echo $MAVEN_HOME
  3. mvn -version

如果终端正常显示了maven的安装版本信息,那就说明你已经安装成功。

配置

maven其实是通过tomcat的一个接口来部署项目到tomcat服务器的,所以你需要先在tomcat中创建一个role和用户。这个role必须是manager-script,然后所创建的用户也需要加入这个role. 所以编辑/opt/tomcat7/conf/tomcat-users.xml文件,加入以下的配置信息。

  1. <tomcat-users>
  2. <role name="manager-script"/>
  3. <user username="user" password="passwd" roles="manager-script"/>
  4. </tomcat-users>

之后你需要把你所输入的用户名和密码添加到maven的/opt/maven3/conf/settings.xml配置文件中,这样,maven就可以用这个身份来跟tomcat服务器进行沟通。使用下面的方法来配置这个文件。

  1. <server>
  2. <id>local_server</id>
  3. <username>user</username>
  4. <password>passwd</password>
  5. </server>

最后,你只要在你想要部署的项目pom.xml文件中加入下面的通用配置,你就可以用maven进行自动部署了。

  1. <plugins>
  2. <plugin>
  3. <groupId>org.apache.tomcat.maven</groupId>
  4. <artifactId>tomcat6-maven-plugin</artifactId>
  5. <version>2.1</version>
  6. </plugin>
  7. <plugin>
  8. <groupId>org.apache.tomcat.maven</groupId>
  9. <artifactId>tomcat7-maven-plugin</artifactId>
  10. <version>2.1</version>
  11. <configuration>
  12. <server>local_server</server>
  13. <url>http://localhost:8081/manager/text</url>
  14. <path>/${project.build.finalName}</path>
  15. </configuration>
  16. </plugin>
  17. </plugins>

使用

完成以上的安装配置后,你就可以享受maven的便捷了。只要在终端敲入以下代码,maven就会帮助你完成所有的打包部署工作。

  1. mvn clean package tomcat7:deploy

使用Maven自动部署Java Web应用到Tomcat服务器的更多相关文章

  1. 使用Maven自动部署Java Web项目到Tomcat问题小记

    导读 首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤: 首先在Eclipse里将项目打包成war包 将服务器上原来的项目文 ...

  2. CentOS配置git和maven自动部署java

    #安装Git yum install git #测试是否成功 git -version #正确 #git version 1.7.1 #配置git config --global user.name ...

  3. Eclipse部署Java Web项目到Tomcat出错

    1.今天,我打开Eclipse,准备将一个Java Web项目部署到Tomcat中, 结果弹出提示错误窗口,具体如下: (1)出错详情 Could not publish server configu ...

  4. [Java Web] 6、Tomcat服务器的安装及配置以及JSP技术笔记

    目录  1.Web容器简介  2.Tomcat粗介及配置粗讲  3.Tomcat服务器配置 3-1.修改端口号  3-2.配置虚拟目录 3-3.配置首页  4.JSP执行流程  5.JSP粗略了解 1 ...

  5. 阿里云Ubuntu部署java web(2) - 配置tomcat

    系统版本号:Ubuntu12.04 64位 安装: 首先要安装java(測试时使用的版本号是6b27-1.12.6-1ubuntu0.12.04.2).版本号可自行选择,但不同版本号配置方法可能不同. ...

  6. 阿里云Ubuntu部署java web - 文件夹

    文件夹(点击章节标题阅读): 阿里云Ubuntu部署java web(1) - 系统配置         ssh链接server(使用终端远程链接)        加入用户        给用户赋予运 ...

  7. 使用Maven自动部署Tomcat 6和Tomcat 7下Web应用

    使用Maven自动部署Tomcat 6和Tomcat 7下Web应用 开启Tomcat远程管理权限 在tomcat的config目录下的tomcat-users.xml文件, <role rol ...

  8. dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器

    # dokcer自动化构建部署java web 基于jenkins+maven+nuxus容器 #环境centos 7.4 docker 18.03.0-ce # nuxus,创建maven本地源(可 ...

  9. maven自动部署到远程tomcat教程

    使用maven的自动部署功能可以很方便的将maven工程自动部署到远程tomcat服务器,节省了大量时间. 本文章适用于tomcat的7.x ,8.x, 9.x版本. 下面是自动部的步骤 1,首先,配 ...

随机推荐

  1. Bigendian 奇数内存地址取整形crash

    在大端机器(solaris-sparc,hpux-hppa)上从奇数内存地址取一个整形(2 or 4 bytes)会崩溃.如: unsigned short Res = *(unsigned shor ...

  2. Norflash控制器的Verilog建模之二(仿真)

    前言:经过几天修改,norflash控制器基本已经完成,通过仿真.完整的norflash包含2个模块:直接操作硬件的norflash_ctrl.v与控制ctrl模块的驱动norflash_driver ...

  3. python 核心编程课后练习(chapter 5)

    5-2 #5-2 def mul(x, y): return x * y print mul(4,5) 5-3 #5-3 def value_score(num): if 90<=num< ...

  4. Oracle 常见函数

    1.把数字转换为字符串:To_char(数字) 2.Oracle 拼接字符串: || ':' || select  字段1 || ':' || 字段2 from  table  :字段1:字段2 3. ...

  5. IntelliJ IDEA 中文乱码问题解决办法

    自己最近在使用IntelliJ IDEA,发现总是出现中文乱码的问题,在网上找了很多教程,发现真是“天下文章一大抄”.还不如自己动手试着解决一下. 1.编辑器以及调试信息中文乱码问题 解决方案: 选择 ...

  6. STL容器适配器 stack, queue

    stack是一种后进先出(last in first out)的数据结构.它只有一个出口,如图所示.stack允许新增元素,删除元素,取得最顶端元素.但除了最顶端外,没有其他任何地方可以存储stack ...

  7. linux下RDP客户端及服务器

    tsclient redsktop remmina   -->对ubuntu支持的非常不错 XRdp 集合vnc作为rdp服务器端使用;

  8. powerdesigner逆向工程,从数据库导出PDM

    本文工具: powerdesigner 15, 数据源oracle 11g 第一步如图,新建一个模型 第二步:选中当前模型 testdb.  然后在菜单栏database->update mod ...

  9. MongoDB学习笔记(数据操作)

    1.  批量插入:     以数组的方式一次插入多个文档可以在单次TCP请求中完成,避免了多次请求中的额外开销.就数据传输量而言,批量插入的数据中仅包含一份消息头,而多次单条插入则会在每次插入数据时封 ...

  10. hibernate框架之-查询结果集返回类型

    Hibernate支持HQL和SQL的查询,返回结果支持POJO类型或字段/数组的形式. 开发中用Hibernate进行数据库查询,用的是SQL.原来需要查询一个表的几乎所有字段,所以我使用了addE ...