Maven与Ant比较
参见链接:http://www.cnblogs.com/itech/archive/2011/11/01/2231837.html
Maven的安装
下载地址:http://maven.apache.org/download.cgi
解压后配置环境变量M2_HOME和修改PATH
配置完成后在命令行输入mvn -v,提示安装完成。
Maven的常用命令为 :
mvn archetype:create :创建 Maven 项目
mvn compile :编译源代码
mvn test-compile :编译测试代码
mvn test : 运行应用程序中的单元测试
mvn site : 生成项目相关信息的网站
mvn clean :清除目标目录中的生成结果
mvn package : 依据项目生成 jar 文件
mvn install :在本地 Repository 中安装 jar
mvn deploy:将jar包发布到远程仓库
mvn eclipse:eclipse :生成 Eclipse 项目文件
使用命令新增MAVEN项目
建一个 JAVA 项目 : mvn archetype:create -DgroupId=com.test -DartifactId=App -DpackageName=com.lwf.test
建一个 web 项目 : mvn archetype:create -DgroupId=com.test -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp
解释:
archetype 是一个内建插件,它的create任务将建立项目骨架
archetypeArtifactId 项目骨架的类型
groupId 项目所在组织的名称标识
artifactId项目的名称,生成的项目目录也是这个名字
packagename项目初始创建的包名
可用项目骨架有:
maven-archetype-archetype
maven-archetype-j2ee-simple
maven-archetype-mojo
maven-archetype-portlet
maven-archetype-profiles (currently under development)
maven-archetype-quickstart
maven-archetype-simple (currently under development)
maven-archetype-site
maven-archetype-site-simple
maven-archetype-webapp
web项目目录结构的布局:
详见http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html
以上在命令行运行的命令均可以Eclipse中集成的插件中使用。
Eclipse中集成插件M2Eclipse
参见:http://www.eclipse.org/m2e/
在eclipse中help打开Install new software,输入链接http://download.eclipse.org/technology/m2e/releases
搜索插件,安装完成即可。
一般插件安装完成后,eclipse会使用默认的maven版本,如下图的:3.0的版本,我自己下载的版本是3.3.9的,为统一版本使用,这里修改成自己下载的版本。
Eclipse下Maven的应用:
Eclipse导入已存在的maven项目 :
在导入之前需要在命令行找到项目根目录并在下面执行如下命令:
普通 Eclipse 项目执行 : mvn eclipse:eclipse Eclipse
web 项目执行 : mvn eclipse:eclipse –Dwtpversion=1.0
如从网上下载的开源项目,直接在pom.xml所在目录执行命令mvn eclipse:eclipse完成后会生成eclipse项目的.project和.classpath文件,然后通过Eclipse的maven插件中选择导入已存在的maven项目即可将其导入。
在eclipse下新建maven web项目
eclipse下new project找到maven,选择Maven Project 在弹出窗口输入web过滤一下,选择maven-archetype-webapp (跟命令行下其实是一样的Artifaceid),选择后输入groupid和Artifaceid即可。Artifaceid即为项目名称,package输入war,完成即可。
Maven+Tomcat+MavenPlugin热部署
Maven项目与之前的项目不同,不能直接在eclipse集成的tomcat环境下部署。不过可以通过tomcat-maven-plugin实现热部署。
方法如下:
1、下载JDK及Eclipse安装,方法略;JDK版本1.7
2、为eclipse集成插件M2Eclipse ,参见上面的Eclipse中集成插件M2Eclipse ,这里我使用的是自己下载的maven3.3.9的版本
3、eclipse中配置tomcat server,tomcat版本可使用6.0或7.0
4、在eclipse下新建maven web项目,如我的项目名称为lwfweb,项目新建完成后修改JRE Library为1.7
这里有些项目在eclipse中运行maven build的时候会报错,错误如下:
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
此时要修改一下Eclipse中jdk的vm arguments值为:
-Dmaven.multiModuleProjectDirectory=$M2_HOME
如下图所示:
5、配置tomcat管理用户及权限:
Tomcat conf 下的tomcat-users.xml 增加以下内容:
<role rolename="admin-gui"/> <role rolename="admin-script"/> <role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <user username="admin" password="pwd" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>
配置完成后,在eclipse下运行配置好的tomcat,并访问http://localhost:8080并通过admin和pwd访问管理tomcat应用。
6、修改maven配置文件,关联tomcat
如我的maven目录D:\Java\apache-maven-3.3.9\conf,在下面找到settings.xml,打开设置servers如下:
<servers> <server> <id>tomcat</id> <username>admin</username> <password>pwd</password> </server> </servers>
7、修改项目lwfweb的pom.xml,如下:
主要就是在pom文件的build下增加plugins节点内容:
<plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <server>tomcat</server> <!-- url tomcat6使用 --> <url>http://localhost:8080/manager</url> <!-- url tomcat7使用 --> <!-- <url>http://localhost:8080/manager/text</url> --> <path>/lwfweb</path> </configuration> </plugin> </plugins>
这里面尤其要注意是的针对tomcat6和tomcat7两个版本url内容不一样。这里如果配置错误会导致以下错误:
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:redeploy (default-cli) on project lwfweb: Cannot invoke Tomcat manager: Server returned HTTP response code: 401 for URL: http://localhost:8080/manager/html/deploy?path=%2Flwfweb&war=&update=true -> [Help 1]
server要与maven的setting.xml中的server id一致。
8、eclipse项目下部署:
在项目下右键菜单,Run as选择Run configuration,在golas中输入:package tomcat:redeploy
(如果想调试的话则在项目下右键菜单,Debug as选择Debug configuration,在golas中输入:package tomcat:redeploy,设置断点,即可进入调试模式)
注:在运行的时候tomcat一定是启动的,否则报错如下:
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:redeploy (default-cli) on project lwfweb: Cannot invoke Tomcat manager: Connection refused: connect -> [Help 1]
运行后看到build success即表示部署成功
上图可选项可以试着用用,如Skip Tests忽略测试用例,Debug output详细调试日志输出等
此时tomcat目录可看到项目
在浏览器输入:http://localhost:8080/lwfweb/ 可看到内容
有的eclipse集成tomcat 的时候需要修改一下server location和webapps的配置,如下图:
注:在Eclipse中配置Tomcat服务器,然后在这里重启tomcat服务时,我发现在tomcat的conf目录下tomcat-users.xml文件会自动还原。比如我们之前配置了用户和密码的,重启后居然回到未修改前的内容。这是因为我们在eclipse中配置了server下的tomcat-user.xml文件未修改导致,所以如果是在eclipse下启动tomcat的话,应修改eclipse中配置server对应的tomcat-user.xml文件内容。如下图:
补充下maven tomcat插件其他命令
命令 | 描述 |
tomcat:deploy | 部署一个web war包 |
tomcat:reload | 重新加载web war包 |
tomcat:start |
启动tomcat |
tomcat:stop |
停止tomcat |
tomcat:undeploy |
停止一个war包 |
tomcat:run | 启动嵌入式tomcat ,并运行当前项目 |
相关推荐
在用maven项目的时候,很多时候不想去再把项目部署到Tomcat上,然后发布并启动,这个时候我们就可以运用Tomcat热部署来配置,只需要再maven的配置文件加上一小段代码即可,非常方便! 启动的时候直接:右键项目--...
适用于Java后台开发Tomcat热部署使用者,包括Java环境的搭建、Tomcat的安装,以及Maven工程中热部署的配置
maven-tomcat-plugin让maven与tomcat配合得很好。它可以把应用部署到Tomcat服务器,也可以把tomcat作为内嵌服务器启动,就像jetty一样。 使用JPDA启动tomcat的远程调试功能。这样就能与eclipse配合起来,轻松地实现...
Maven +Tomcat+m2eclipse的热部署(hot deploy)
NULL 博文链接:https://zheng12tian.iteye.com/blog/1772330
使用maven 对java程序编译构建,打包和部署。自动化部署
Eclipse Mars.2 Release (4.5.2),maven 3.3.9,tomcat7,JRebel6.4.3,包内包含JRebel与详细使用说明,纯手写,且亲测可用,eclipse,maven,tomcat可自行下载,JRebel为破解版,码字辛苦,望各位大神给1分辛苦费
主要介绍了maven tomcat plugin实现热部署,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
利用maven创建Web项目,并在eclipse测试部署web项目
主要介绍了IntelliJ IDEA使用maven实现tomcat的热部署,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
NULL 博文链接:https://xunclapton.iteye.com/blog/795561
主要介绍了SSM项目频繁打成war包部署操作频繁?使用tomcat和maven实现热部署配置,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
主要介绍了Maven添加Tomcat插件实现热部署代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
maven常用知识整理:项目依赖 多模块 WAR依赖 打包 热部署 maven-tomcat-plugin maven-jetty-plugin
IDEA2020导入非maven项目并部署tomcat的方法在idea中将创建的java web项目部署到Tomcat中的过程图文详解idea打包成war包部署到tomcat及访问路径问题(图文详解)Idea配置maven-tomcat-plugin插件实现项目部署IDEA导入...
公司的项目一直手动maven打包、上传服务器、关闭/开启tomcat,整个流程下来耗时耗力,虽然可以将所有流程通过shell脚本一次性解决,但如果可以通过idea的Jenkins插件一键自动部署,那更省时省力。 下面是一个...
maven项目的热项目,就是在tomcat启动的情况下, 服务器nginx 反向代理 负载均衡
到目前为止,还没有一个技术可以很完美的解决maven的实时调试,以上工具经本人修改过源码,算是一个比较完美的解决方案吧 望笑纳
我们需要实现热部署,自然就需要通过maven操作tomcat,所以就需要maven取得操作tomcat的权限,现在这一步就是配置tomcat的可操作权限. 在tomcat的安装目录下,修改conf / tomcat-user.xml文件,在<tomcat> 节点下面增加...
eclipse+tomcat+Springmvc+maven 热部署 有需要的拿走