Installer - 使用Maven自动布署至外部Tomcat
一.配置相关文件
1.配置tomcat的conf/tomcat-users.xml文件
<tomcat-users>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui,manager-script"/>
</tomcat-users>
启动tomcat服务器,然后访问http://192.168.6.95:8080/manager/html,在弹出的对话框中输入用户名和密码,如果出现以下界面,表示tomcat配置一切OK:
2.配置maven的conf/setting.xml文件
<servers>
<server>
<id>tomcat</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>
注意:这里用户名、密码必须为manager-gui角色的用户,这里设置需要与之前tomcat配置时的角色分别对应起来。
3.配置web项目的pom.xml
在pom.xml添加的<project></project>中添加bulid标签(只适配于tomcat6)
<build>
<plugins>
<!--布署Tomcat插件-->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat6-maven-plugin</artifactId>
<version>2.0-beta-1</version>
<configuration>
<url>http://192.168.6.95:8080/manager</url>
<server>tomcat</server>
<username>admin</username> <!--用户名-->
<password>admin</password> <!--密码-->
<path>/toll-gate</path> <!--项目名-->
<contextReloadable>true</contextReloadable>
</configuration>
</plugin>
<!--若运行测试出错,仍继续布署-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
二.热部署maven项目
1.执行redeploy命令
运行请先启动tomcat,在maven build的goals中输入命令tomcat6:redeploy即可发布,或在Run Configurations->Maven build新建一个命令,base directory里选择你的web project,在Goals栏可填写你所需要的命令,点击Run或者Debug后,MyEclipse会自动下载所需的插件并在Console启动Tomcat。若部署成功,则会显示如下信息:
注意:deploy如果已经部署过,再redeploy就会失败.去tomcat的webapps删除已经部署过的war包就行了.
2.测试发布结果
打开浏览器,输入http://localhost:8080/toll-gate,即可见到发布的项目页面。同时,你也可以在webapps看到toll-gate工程和toll-gate.war包了。
附录:几个常用的Goal
tomcat:deploy 部署一个web war包
tomcat:reload 重新加载web war包
tomcat:start 启动tomcat
tomcat:stop 停止tomcat
tomcat:undeploy 停止一个war包
tomcat:run 启动嵌入式tomcat ,并运行当前项目
Installer - 使用Maven自动布署至外部Tomcat的更多相关文章
- 搭建git服务器及利用git hook自动布署代码
注意:服务器:Ubuntu Server 14.04,我的项目比较小,所有操作都使用root,建议最好新建一个用户(需要有管理员权限,否则在后面使用hooks自动部署代码时会出现各种权限问题,很蛋疼的 ...
- 将war包布署在本地tomcat上
1.把war包解压到..webapps目录下 2. 修改server.xml文件,在host节点中添加 <Context docBase="C:\Users\bai\Desktop\s ...
- CentOS7 Nodejs布署环境
一.服务器设置:https://www.youtube.com/watch?v=1OU5ngq-WyM&list=PLQlWzK5tU-gDyxC1JTpyC2avvJlt3hrIh& ...
- 从pip+requirements.txt+virtualenv管理依赖到使用pipenv管理依赖-修改布署方式
背景: 已经使用pip+requirements.txt+virtualenv管理了项目一段时间,为了不要每次都 导出依赖(本地),安装依赖(服务器) 现在要使用pipenv来管理项目的依赖关系 思路 ...
- centOS7 flask项目布署
先用1张图表示centOS布署flask的关键点,以及可能遇到的问题,及解决办法. 图片看不清,可以[下载]下来看,清晰度能够看清字 [目标] 局域网内,通过url可以访问flask编写的api 更新 ...
- flask环境布署--废弃不用,只留作备份
[前置条件] 创建1个flask-demo,生成requirement.txt文件(下载好gunicorn),上传至git.创建demo参照:创建一个flask api-demo(响应体显示中文) g ...
- Maven入门示例(3):自动部署至外部Tomcat
Maven入门示例(3):自动部署至外部Tomcat 博客分类: maven 2012原创 Maven入门示例(3):自动部署至外部Tomcat 上一篇,介绍了如何创建Maven项目以及如何在内 ...
- idea maven无法热布署exploded
(原) 有时,你的idea可能会偶尔出现点小问题,特别是在用maven的时候,以前可以用的热布署发现没有了.就像这样: 少了一个选项,并且下面会有一个提示,no artifacts configure ...
- 布署配置管理中心apollo
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限.流程治理等特性,适用于微服务配置管理场景. 服 ...
随机推荐
- JAVA发展历史!
前言 自1946年2月14日世界上首款计算机问世,第一代计算机语言“机器语言”便诞生了,它使用的是最原始的穿孔卡片,这种卡片上使用的语言只有专家才能理解,与人类语言差别极大.这种语言本质上是计算机能识 ...
- vue条形码+二维码
<template> <section style="height: 100vh;" class="bg"> <div class ...
- 解决通过vmware克隆虚拟机后,无法上网的问题
注意:如果源主机是CentOS 6.8,复制出来的机器会出现无法上网. 如果源主机是CentOS 7,复制出来的机器可以正常上网.复制后,只要改下IP地址即可上网. 出现该问题的原因是,我们克隆后,将 ...
- spark 变量使用 broadcast、accumulator
broadcast 官方文档描述: Broadcast a read-only variable to the cluster, returning a [[org.apache.spark.broa ...
- Leetcode241.Different Ways to Add Parentheses为运算表达式设计优先级
给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果.你需要给出所有可能的组合的结果.有效的运算符号包含 +, - 以及 * . 示例 1: 输入: "2-1 ...
- 深度探索C++对象模型之第二章:构造函数语意学之Default constructor的构造操作
C++新手一般由两个常见的误解: 如果任何class没有定义默认构造函数(default constructor),编译器就会合成一个来. 编译器合成的的default constructor会显示的 ...
- Python学习笔记(一)——输入与输出
输出:——print() Python中的输出使用print()完成 >>> 在屏幕中输出Hello World >>> print('Hello World') ...
- Perl 数据类型
Perl 数据类型 Perl 是一种弱类型语言,所以变量不需要指定类型,Perl 解释器会根据上下文自动选择匹配类型. Perl 有三个基本的数据类型:标量.数组.哈希.以下是这三种数据类型的说明: ...
- 初识STL
原生指针 泛型指针 智能指针 都是什么? iterator迭代器和指针的区别 C++标准模板库(STL)迭代器的原理与实现 [C++]STL常用容器总结之一:容器与迭代器 C++内置数组和array的 ...
- csp-s模拟测试85
csp-s模拟测试85 $T1$全场秒切没有什么区分度,$T2$全场成功转化题意但是我并不会打,$T3$暴力都没打很遗憾. 100 00:21:49 02:56:35 02:56:49 135 02: ...