学习内容:

1.不依赖外部Tomcat,自己启动方式部署
2.Maven打war包,远程部署到centOS
3.Maven热部署(不关闭Tomcat部署应用)
 
做maven开发前提:
1.编码UTF-8
2.设置maven仓库位置(setting.xml文件里面配置Maven仓库的路径)
    例如:<localRepository>G:\Maven\repository</localRepository>(这个仓库是公司Maven服务器仓库down下来的)
3.在eclipse中设置Maven的usersetting,找到setting.xml文件(不报错就对了)
4.设置仓库索引,打开eclipse---windows---show view---Maven Repsotories视图,Rebuild Index重建索引.
5.新建Maven工程
Maven工程结构;
 
打开pom.xml:
下面两行删除(没用):
配置Tomcat插件:
在pom.xml文件中右键点击:
Add Plugin添加插件;输入tomcat;ok后pom.xml就会出现下面的内容
  1. <!-- 配置tomcat插件 -->
  2. <build>
  3. <finalName>demo</finalName>
  4. <plugins>
  5. <plugin>
  6. <groupId>org.apache.tomcat.maven</groupId>
  7. <artifactId>tomcat7-maven-plugin</artifactId>
  8. <version>2.2</version>
  9. <configuration></configuration>
  10. </plugin>
  11. </plugins>
  12. </build>
右键点击项目:Run As
勾上Skip Tests,然后run
控制台INFO信息没问题,只要不出现error级别的信息就没问题;
 
拷贝地址,放到浏览器地址栏,测试是否出现index.jsp中的Hello World
以上就是不依赖外部的Tomcat自启动.
 
下面简介Maven打war包:
用Maven第二个命令Maven Build...

刷新工程F5;这时就可以到target中找到war包了
 
 
下面简介热部署:
首先启动Tomcat;启动前需要配置Tomcat密码;进入下面文件夹,打开..

在最后添加:
  1. <rolerolename="manager-gui"/>
  2. <rolerolename="manager-script"/>
  3. <userpassword="123456"roles="manager-gui, manager-script"username="tomcat"/>
效果图:
启动Tomcat:

 
 打开浏览器,在地址栏输入http://localhost:8080/   点击Manager App  输入刚配置的用户名和密码;
效果:对应的就是webapps目录下的内容
修改项目的pom.xml

Maven Build...
控制台不报错,出现Build Success就成功发布了,去发布路径下看有没有.
这时浏览器访问http://localhost:8080/demo      ,出现Hello World
你可以试着在在pom.xml加一行
重新发布:
命令:tomcat7:redeploy
如果用deploy会报如下错误:
这时就把我们的工程发布到Root下,覆盖tomcat自带的工程.
浏览器访问 http://localhost:8080    出现我们的Hello world
 
 

Maven开发基础总结(Maven自启动,Maven打war包,Maven热部署)的更多相关文章

  1. Intellij IDEA社区版打包Maven项目成war包,并部署到tomcat上

    转自:https://blog.csdn.net/yums467/article/details/51660683 需求分析 我们利用 Intellij idea社区版IDE开发了一个maven的sp ...

  2. jenkins之从0到1利用Git和Ant插件打war包并自动部署到tomcat(第三话):创建一个自由风格的项目(非maven),实现自动打war包

    上一节把git和ant安装在虚拟机,并在jenkins上做了相关配置,接下来就可以真正开始构建一个项目了 1.新建一个自由风格的项目,因为是用ant打包,所以不要选择构建maven项目 2.配置源码管 ...

  3. 开发环境下jboss 7.1.1 Final 的jsp热部署解决方案--转

    公司的网站系统使用的中间是jboss7.1.1 Final,由于有些数据和服务测试环境不具备,免不了要在测试环境调试些jsp页面,发现从jboss社区里下载的jboss应用有个问题,新增jsp页面会实 ...

  4. java开发_eclipse导出为war文件,热部署到tomcat运行总结[转]

    在Myeclipse中,我们很容易做到这一步:把一个web项目生成war文件 其实在eclipse中,实现这样的功能,也是很简单的. 下面就看一下是怎样操作的吧! 新建一个web项目: 取名为:ecl ...

  5. 基于tomcat插件的maven多模块工程热部署(附插件源码)

    内容属原创,转载请注明出处 写在前面的话 最近一直比较纠结,归根结底在于工程的模块化拆分.以前也干过这事,但是一直对以前的结果不满意,这会重操旧业,希望搞出个自己满意的结果. 之前有什么不满意的呢? ...

  6. 在maven多模块结构中,并且使用overlay的情况下使用jetty热部署

    在使用maven多模块的结构的时候,同时有多个web工程使用maven-war-plugin的overlay来组织的时候,本地开发时如何在eclipse里面启动容器并且可以热部署调试是个比较麻烦的问题 ...

  7. maven打war包注意之xml、properties文件没打进去解决方法

    maven项目在ide中编译出的war包一般不会有很多问题. 但是经过集成环境打war包会出现war包中打不进xml.properties等文件.这样打war包不会报错,但是war包放进tomcat中 ...

  8. eclipse maven 打war包的几种方式

    第一种:利用pom.xml文件打包. 右键pom.xml文件,选择Debug as或Run as 都行.但需要选择Maven install  打包 执行成功后,日志会打印出位置(看自己配置是否日志输 ...

  9. maven教程基础

    一.Maven介绍 我们在开发项目的过程中,会使用一些开源框架.第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的jar包,我们同样需要添加到项目中,所有这些相关的 ...

随机推荐

  1. UTF8转码, 考虑利用app转好再传, CC2541转太麻烦了...

  2. vm克隆虚拟机网络配置

    *CentOS虚拟机网络连接方式为:桥接模式* 虚拟机克隆后会导致网络连接不上:(引起原因是新的MAC和网卡配置对应不上)问题解决(在克隆机里执行下列步骤): vi /etc/udev/rules.d ...

  3. 【Pro ASP.NET MVC 3 Framework】.学习笔记.3.MVC的主要工具-单元测试

    IProductRepository接口定义了一个仓库,我们通过它获得.更新Product对象.IPriceReducer接口指定了一个功能,它将要对所有的Products实施,通过一个参数,降低他们 ...

  4. Python拷贝(深拷贝deepcopy与浅拷贝copy)

    Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1.copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2.copy.deepco ...

  5. symfony中twig的模板变量与注释

    程序会传递给模板若干变量,你需要在模板里输出他们.例如输出$hello .1{{ hello }}.如果传递给模板的是对象或者数组,你可以使用点. 来输出对象的属性或者方法,或者数组的成员.或者你可以 ...

  6. oracle-odu小试牛刀--恢复drop表的数据

         现在进入oracle12c时代:普遍用的oracle版本为10g以上.在oracle10g之后提供了一个回收的机制.所以恢复drop表的数据以及表很容易.当然需要打开回收机制以及是归档模式. ...

  7. IE6下 input 背景图滚动问题及标签规范

    ie6 背景图滚动问题: <title>ie6下input背景图滚动问题</title> <style> .box{ height:20px; width:300p ...

  8. js&jq 发送验证码倒计时

    <input  type="text"   name=''  id="btn"> //发送验证码倒计时var wait=30; function t ...

  9. poj1961 Period

    我们考虑KMP算法中fail失配指针的意义. 对于一个模式串(Pattern),位置i对应的失配指针fail[i]是那个位置: 这个位置满足的条件是,子串[0, fail[i])是位置i(不含)的后缀 ...

  10. centos6.5用户添加到sudoers中

    一.将用户添加到sudoers su vi /etc/sudoers :x! success 二.解释 su 目的是使用最高root权限去进行修改操作 vi /etc/sudoers 使用vi编辑器打 ...