idea/eclipse下Maven工程集成web服务(tomcat、jetty)
idea/eclipse下Maven工程集成web服务
转载请注明出处:http://www.cnblogs.com/funnyzpc/p/8093554.html
应用服务器最常用的一般有这哥仨:tomcat、jetty、webLogic ,前两者开源属轻量级应用服务器,适用于一般项目开发环境和生产环境,后者则是收费的、企业级、大型应用服务器;这三者个人都用过,一般做中小型项目的时候IDE集成jetty来调试和开发,tomcat做生产环境服务,至于webLogic我只在银行的一些项目中用到,一般部署在linux服务器上,需要使用命令启动服务,万幸的是组件配置的时候是在webLogic的web服务中配置(其中包括数据源、日志、外部依赖、集群、分布式。。。),遂将webLogic用于本地开发着实不便,嗯,好吧,本章我就讲讲本地开发如何集成jetty或tomcat服务。
不管是idea还是eclipse,对于项目运行大致有两种配置方式≡(▔﹏▔)≡:
A>一种是IDE集成web服务
B>一宗是项目集成web服务
C>通过main方法启动工程(这里不讲)
IDE集成web服务的好处就是不管任何项目我都可以用本地web服务器跑起来,但,可能会出现一个问题是:如果IDE中运行多个工程(有老工程有新工程的话)会造成服务运行失败,这个问题我着实碰到过,不过大多数情况下都没问题的~,既然聊到IDE集成tomcat,那就讲一下如何配置吧,Let's go=>
首先需要从官网下载web服务软件(这里以tomcat为例,jetty同tomcat):

可以看到Core中有好几项,第一个zip和tar包的版本均可用于windows或linux版本,需要解压后使用,第三第四第五个分别是专用于32位系统的windows系统版本(需解压使用)、64位的Windows系统版本(需解压使用)、32/64位安装版本(无需解压,安装后会自动添加tomcat服务,多用于windows系统下生产环境)。
接下来eclipse配置tomcat:


以上配置的时候需要对应下载的tomcat的版本,然后就是配置服务名称、tomcat目录位置、jre:

点完finish后选择run下面的“run configurations...”选项:


好了,项目这就跑起来了\(0^◇^0)/,嗯,这里会有个问题,如果是多个项目的话端口肯定会冲突,如果同时运行的话肯定会失败的,对于端口的配置需要在tomcat的server.xml中配置,修改起来十分的麻烦,至于同时运行,个人也找了很多方法,但都以失败告终,其实这个问题并不是无解,接下来看如何在工程里面集成tomcat插件,可以配置任意端口,服务多开也不会报错!
工程集成tomcat的好处有很多:版本可随时更改、端口可任意配置且工程拷贝到其他用户的IDE下直接配置运行就可以跑起来了,是不是很easy,just do it ==>
首先,需要在Maven的配置文件pom.xml中添加一个插件(在plugins中):
<!-- maven集成tomcat运行 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat6-maven-plugin</artifactId>
<version>1.1</version>
<configuration>
<path>/thirdDemo</path>
<port>8089</port>
<uriEncoding>UTF-8</uriEncoding>
<url>http://localhost:8089/thirdDemo/student/listStudent</url>
<server>tomcat6</server>
</configuration>
</plugin>
如配置jetty,请添加这一段:
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.4.8.v20171121</version>
<configuration>
<httpConnector>
<port>9092</port>
</httpConnector>
<stopKey>shutdown</stopKey>
<stopPort>9099</stopPort>
<webAppConfig>
<contextPath>/</contextPath>
<!--<contextPath>/${project.artifactId}</contextPath>-->
</webAppConfig>
</configuration>
</plugin>
应为上面两个服务的配置我是在两个不同的工程下,遂各位需要视自己的项目来配置里面的url和path参数,不然项目无法运行可就不好了。
配置完插件,接下来就需要用maven中配置命令就可以无痛运行了啦~(●'◡'●)ノ♥:

项目是不是跑起来了,如果配置的是jetty,请使用“jetty:run"命令。
如果用的是idea,需要这样配置才可运行:

如果是工程集成web服务,请参照此配置:

如果是IDE集成web服务,请参照如下配置,配置完成后点击运行按钮即可将工程跑起来:

是不是巨简单,有木有~
idea/eclipse下Maven工程集成web服务(tomcat、jetty)的更多相关文章
- eclipse的maven工程Dynamic Web Module 2.3 修改为3.0 解决办法
1. 创建Maven Web工程 2. 项目只有src/main/resources >Java Build Path导入Tomcat运行环境 3. 删除以图片红框中的文件 4. Propert ...
- eclipse 创建maven 项目 动态web工程完整示例
需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...
- eclipse 创建maven 项目 动态web工程报错
Eclipse 创建maven 项目 动态web工程 注:Eclipse版本为(Version: Mars.1 Release (4.5.1))maven版本为(apache-maven-3.3.9) ...
- eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis
接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...
- Eclipse下Maven新建Web项目index.jsp报错完美解决(war包)
Eclipse下Maven新建Web项目步骤 1. 2. 3. 4. 5. 问题描述 最近用eclipse新建了一个maven项目,结果刚新建完成index.jsp页面就报错了,先把错误信息贴出来看看 ...
- Eclipse的maven构建一个web项目,以构建SpringMVC项目为例
http://www.cnblogs.com/javaTest/archive/2012/04/28/2589574.html springmvc demo实例教程源代码下载:http://zuida ...
- Eclipse创建Maven工程报错
问题 用Eclipse创建maven工程的时候,总是会报错,例如提示: Unable to create project from archetype [org.apache.maven.archet ...
- Eclipse下maven使用嵌入式(Embedded)Neo4j创建Hello World项目
Eclipse下maven使用嵌入式(Embedded)Neo4j创建Hello World项目 新建一个maven工程,这里不赘述如何新建maven工程. 添加Neo4j jar到你的工程 有两种方 ...
- 【Maven】Eclipse 使用Maven创建SpringMVC Web项目
创建环境 系统:win 10 软件:eclipse,maven. 创建步骤 创建一个Maven Web项目,可以参照:[Maven]Eclipse 使用Maven创建Java Web项目 添加spri ...
随机推荐
- sublime中配置Java 环境
1.线安装jdk,并配置好环境变量2.创建批处理或Bash Shell脚本文件打开任意的文本编辑器,输入下面的内容,并保存为runJava.bat文件,然后把runJava.bat批处理文件移动到JD ...
- python是如何进行内存管理的
Python引入了一个机制:引用计数. python内部使用引用计数,来保持追踪内存中的对象,Python内部记录了对象有多少个引用,即引用计数,当对象被创建时就创建了一个引用计数,当对象不再需要时, ...
- How to Quickly Create a Copy of a Table using Transact-SQL
The easiest way to create a copy of a table is to use a Transact-SQL command. Use SELECT INTO to ext ...
- flask中下载服务器上特定路径的文件
使用flask下载服务器上某个路径下的文件 path:文件路径以及需要下载的文件,直接写入参数有安全隐患,实际应用中需要判断权限之类的 from flask import send_file, mak ...
- Python的property装饰器的基本用法
Python的@property装饰器用来把一个类的方法变成类的属性调用,然后@property本身又创建了另一个装饰器,用一个方法给属性赋值.下面是在类中使用了@property后,设置类的读写属性 ...
- 新一代的昆明网络seo优化技巧
一年一度的双11又即将到来,今天选择在双11这天新注册了一个博客园,第一篇文章,我决定来谈一谈现在的网络SEO. 起首咱们来熟悉下SEO是什么,SEO全名叫Search Engine Optimiza ...
- c#异步调用的几种方式
首先,我们分析一下异步处理的环境 需要在当前线程中获取返回值 不需要在当前线程中获取返回值,但是仍然需要对返回值做处理对于第1中情况,还可以继续细分 在当前线程中启动线程T,然后继续执行当前线程中的其 ...
- Ext3和Ext4文件系统区别
inode http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html Ex3使用15个inode查询数据块,前12个为直接数据块,直接指 ...
- Python之numpy模块array简短学习
1.简介 Python的lists是非常的灵活以及易于使用.但是在处理科学计算相关大数量的时候,有点显得捉襟见肘了. Numpy提供一个强大的N维数组对象(ndarray),包含一些列同类型的元素,这 ...
- Python之signal模块
http://www.cnblogs.com/dkblog/archive/2011/03/07/1980636.html 1.超时处理 #!/usr/bin/env python2.7 #-*- c ...