启动Tomcat的几种方式
启动Tomcat有两种场景,一是部署时启动,二是开发时启动。部署时基本上是通过war包来启动,而开发时的启动方式多种多样,下面拟介绍几种适用于开发时启动Tomcat的方法。
- 在DOS命令行启动
Apache Tomcat提供了一个名为tomcat7-maven-plugin的插件,该插件提供了多种启动Tomcat的方式。这里我们主要关心的是tomcat7:run启动方式。
tomcat7:run所启动的是内置的Tomcat,与你本机是否安装了Tomcat无关。该内置的Tomcat会被Maven自动下载,并在执行tomcat7:run时被启动。我们可以在pom.xml里对这个内置Tomcat进行参数配置。使用内置Tomcat的好处是每次启动都是一个干净的环境,如果你长时间没关心某个工程,而突然要进行开发时,这个干净的环境很重要,让你立即还原到以前的工作环境中。
使用tomcat7:run时又有两个场景。如果你只有war工程,并且与其相关的jar文件都已上传到Maven服务器上了(或已安装到本地Maven库中),你可以在war工程的目录下执行下面的命令来启动:
mvn tomcat7:run
该命令将自动地把本地Maven库上的jar文件增加到classpath路径上,同时还会自动编译war工程,但并不打war包,启动较快。
另一个使用场景是,如果你有全部工程的源程序(若干jar工程和一个war工程),并且需要不时地修改程序,你可以在根工程下通过下面的命令来启动:
mvn tomcat7:run -am -pl abc
其中,假设abc是你的war工程名。该命令将自动地把各工程的源程序编译到各自的target/classes目录下,并添加到classpath路径中。同样,该命令也不打war包,减少了启动时间。
需要注意的是,上面的命令只处理根pom.xml里<modules>中定义的工程,其它所依赖的工程仍直接取本地Maven库中的jar文件。当然,我们也必须把那个war工程(即上面的abc)也定义到<modules>中才行。
- 在Eclipse里启动
在Eclipse里安装m2e和m2e-wtp插件后就可以在Servers中启动Tomcat了,这是我们首选的启动方式,此法不再赘述。
此外,我们还可以在Eclipse里执行上面说到的“mvn tomcat7:run”或“mvn tomcat7:run -am -pl abc”命令。在Eclipse里执行Maven命令比在DOS窗口里执行的一个好处是复制粘贴更容易,并且在程序抛异常后可以直接点击超链接打开对应的程序,并定位到出错的地方。
要想在Eclipse里执行Maven命令,你可以右键war工程或根工程 -> Run As -> Maven Build,然后在新出现的窗口的Goals输入框里输入“tomcat7:run”、或“tomcat7:run -am -pl abc”即可。
启动Tomcat的几种方式的更多相关文章
- Tomcat:使用JMX监管Tomcat的几种方式
Tomcat使用JMX管理方式,在Tomcat的自带应用manager就是使用了JMX方式来管理Tomcat,以此完成Web应用的动态部署.启动.停止. 然而manager应用是一种本地使用JMX接口 ...
- 将web应用部署到Tomcat的三种方式
Tomcat作为Servlet/JSP容器(服务器)挺不错的,开源免费,需要知道的是Tomcat是一个Web服务器,其符合Servlet/JSP规范,但是却没有实现所有JavaEE规范,所以我们还是应 ...
- 【Tomcat】部署Web到tomcat的四种方式
一.静态部署 1.直接将web项目文件件拷贝到webapps 目录中 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP ...
- Android-创建启动线程的两种方式
方式一:成为Thread的子类,然后在Thread的子类.start 缺点:存在耦合度(因为线程任务run方法里面的业务逻辑 和 线程启动耦合了) 缺点:Cat extends Thread {} 后 ...
- @Autowired注解和启动自动扫描的三种方式(spring bean配置自动扫描功能的三种方式)
前言: @Autowired注解代码定义 @Target({ElementType.CONSTRUCTOR, ElementType.FIELD, ElementType.METHOD, Elemen ...
- C#单独启动进程的几种方式
本文实例讲述了C#启动进程的几种常用方法.分享给大家供大家参考.具体如下: 1.启动子进程,不等待子进程结束 private void simpleRun_Click(object sender, S ...
- Android启动Activity的两种方式与四种启动模式
1.在一个Activity中调用startActivity()方法 2.在一个Activity中调用startActivityRequest()方法. 重写onActivityResult方法,用来接 ...
- 【转】SpringBoot启动服务的三种方式
1.IDEA启动 2.命令行启动 首先将命令行位置跳转到当前项目的根目录下,再输入“mvn spring-boot:run”命令,初次操作maven需要下载插件等待几分钟 3.命令行编译为jar启动 ...
- android 启动 service 的两种方式,及什么时候用哪个 android 什么时候用bindService
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha android 什么时候用bindService ============ 启动方式有 ...
随机推荐
- fourinone分布式缓存研究和Redis分布式缓存研究
最近在写一个天气数据推送的项目,准备用缓存来存储数据.下面分别介绍一下fourinone分布式缓存和Redis分布式缓存,然后对二者进行对比,以供大家参考. 1 fourinone分布式缓存特性 1 ...
- 二十七、Java图形化界面设计——容器(JFrame)
摘自http://blog.csdn.net/liujun13579/article/details/7756729 二十七.Java图形化界面设计--容器(JFrame) 程序是为了方便用户使用的, ...
- http://home.cnblogs.com/
说起编辑器,可能大部分人要推荐的是Vim和Emacs,本人用过Vim,功能确实强大,但是不是很习惯,之前一直有朋友推荐SUblime Text 2这款编辑器,然后这段时间就试了一下,就深深地喜欢上这款 ...
- [bzoj2301: [HAOI2011]Problem b] 乞讨
</pre><pre code_snippet_id="507886" snippet_file_name="blog_20141104_2_53831 ...
- ffmpeg常用参数一览
基本选项: -formats 输出所有可用格式 -f fmt 指定格式(音频或视频格式) -i filename 指定输入文件名,在linux下当然也能指定:0.0(屏幕录制)或摄像头 -y 覆盖已有 ...
- HTML之学习笔记(一)简介
HTML(HyperText Markup Language超文本标记语言),'超文本'指的是页面不仅可以包含文本信息,还可以包含图片,链接等非文本元素.html与js,jq是共同用来进行网站前端开发 ...
- [AngularJS系列(4)] 那伤不起的provider们啊~ (Provider, Value, Constant, Service, Factory, Decorator)(转)
用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄 ...
- android中列表的滑动删除仿ios滑动删除
大家是不是觉得ios列表的滑动删除效果很酷炫?不用羡慕android也可以实现相同的效果 并且可以自定义效果,比如左滑删除,置顶,收藏,分享等等 其实就是自定义listview重写listview方法 ...
- JQ each
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- NSString 字符串操作
//一.NSString /*----------------创建字符串的方法----------------*/ //1.创建常量字符串. NSString *astring = @"Th ...