How to create a Maven web app and deploy to Tomcat - fast
原文地址: http://www.blogjava.net/sealyu/archive/2010/01/08/308706.html
Procedure
Prerequisites and Assumptions
- Maven is already installed
- A local instance of Tomcat is already installed and configured to run on port 8080
- Optional - Eclipse is installed
Step One - Prepare the Tomcat Manager application
In order to deploy a web app to your Tomcat server, you will need to ensure that you can access the Tomcat Manager application at:http://localhost:8080/manager/html
. Typically, you just need to ensure that your <tomcat>/conf/tomcat-users.xml file has the following defined:
<?xml version='1.0' encoding='utf-8'?> |
<tomcat-users> |
<role rolename="manager"/> |
<role rolename="admin"/> |
<user username="admin" password="admin" roles="admin,manager"/> |
</tomcat-users> |
In this case, we will be logging in to the Tomcat Manager app using:
| username | admin |
|---|---|
| password | admin |
Step Two - Create a New Web App Using Maven
Next, we will use a Maven archetype to generate a new web application project.
Assuming that you will primarily use Eclipse as your IDE, you may wish to start the project within Eclipse. We'll start the project within Eclipse and then use Maven to fill the project in with the proper Maven web app structure.
- In Eclipse create a new General project. New > Project... > General > Project
- Project name: "sw" (name it what you wish, but remember to replace 'sw' with your project name in all instances where that appears in this document from here on out.)
The steps above just create a General project in your Eclipse workspace (e.g. a folder with a .project settings file inside of it).
Next, open a command prompt, cd into the 'sw' project directory, and then execute the following Maven command (all on one line):
mvn archetype:create |
-DgroupId=com.burlesontech.sw |
-DartifactId=webapp |
-DarchetypeArtifactId=maven-archetype-webapp |
You project will now have the following structure:
- sw
- webapp
- src
- main
- resources
- webapp
- WEB-INF
- web.xml
- index.jsp
- WEB-INF
- main
- pom.xml
- src
- .project
- webapp
In Eclipse, right-click on the project and select Refresh to see this stuff within Eclipse. (Note that the .project file will typically not appear within Eclipse, but it is there.)
Step Three - Define Your Tomcat Server in Maven Settings
Open your Maven settings.xml file (e.g. C:"Documents and Settings"Administrator".m2"settings.xml) and add a server 'myserver' with the credentials for logging into the Tomcat Manager application:
<settings> |
<servers> |
<server> |
<id>myserver</id> |
<username>admin</username> |
<password>admin</password> |
</server> |
</servers> |
... |
Step Four - Point Your Pom to Your Tomcat Server
Open the pom.xml file in the 'sw' project and replace the <build> section so that it looks like this:
<build> |
<finalName>sw</finalName> |
<plugins> |
<plugin> |
<groupId>org.codehaus.mojo</groupId> |
<artifactId>tomcat-maven-plugin</artifactId> |
<configuration> |
<server>myserver</server> |
<path>/sw</path> |
</configuration> |
</plugin> |
</plugins> |
</build> |
Here, we have added the Tomcat plugin for Maven. Note that the <configuration> section needs to point to the server you defined in settings.xml ('myserver'). The <finalName> and the <path> are used to tell the web context that you want to deploy to. In this case, we'll be able to access our application athttp://localhost:8080/sw
.
Step Five - Build and Deploy the Web App
On a command prompt, you can now cd into the sw/webapp directory where the project pom exists. The execute the following command:
mvn tomcat:deploy |
If you get a BUILD SUCCESSFUL message, you should then be able to access your web application at http://localhost:8080/sw/
.
You should see "Hello World!" in your web browser (from the index.jsp page). Now you're all set and ready to start building the next killer web app!
If you try to deploy again with the same command, you will likely get a FAIL message because the application already exists at the path. For successive deployments, use the following command instead:
mvn tomcat:redeploy |
Next, you may want to enable log4j logging for your new application; check out How to setup Log4j in a web app - fast.
How to create a Maven web app and deploy to Tomcat - fast的更多相关文章
- JavaEE开发基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- eclipse创建maven web app
1 这个功能是由eclipse的插件maven archetype plugin支持的 2 创建过程 File->New->Maven Project 选择archetype为maven- ...
- 【IDEA使用技巧】(5) —— IntelliJ IDEA集成Tomcat部署Maven Web项目
1.IntelliJ IDEA集成Tomcat部署Maven Web项目 1.1.IDEA构建Maven Web项目 使用IDEA来创建一个简单的Hello World的Maven Web项目,并使用 ...
- 004.Create a web app with ASP.NET Core MVC using Visual Studio on Windows --【在 windows上用VS创建mvc web app】
Create a web app with ASP.NET Core MVC using Visual Studio on Windows 在 windows上用VS创建mvc web app 201 ...
- Java create azure web app
create a certificate <java-install-dir>/bin/ keytool -genkey -alias <keystore-id> -keyst ...
- Create an ASP.NET Core web app in Visual Studio Code
https://www.microsoft.com/net/core#windowscmd https://download.microsoft.com/download/B/9/F/B9F1AF57 ...
- 亲手使用Sencha Touch + phonepag开发Web APP随笔 -- 第一个APP
参考博文: [Phonegap+Sencha Touch] 移动开发1.准备工作 [Phonegap+Sencha Touch] 移动开发2.PhoneGap/Cordova初步使用 经过差不多1 ...
- Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问
本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...
随机推荐
- POJ 2348 Euclid's Game(辗转相除博弈+自由度分析)
题目链接:http://poj.org/problem?id=2348 题目大意:给你两个数a,b,Stan和Ollie轮流操作,每次可以将较大的数减去较小的数的整数倍,相减后结果不能小于0,谁先将其 ...
- 实习day2:@2X图片,git,coding.net,
@2X是5和6系列的图片,@3X是6P等大屏的图片 本公司目前只用@2X的图片适配. 比如20X27的图片 1x, 就是原始大小: 用2X, 就除以2,变成10X13.5: 如果用3X的, 就除以3, ...
- URL and Ajax Helper Methods
1.Unobtrusive Ajax
- RabbitMQ指南之二:工作队列(Work Queues)
在上一章的指南中,我们写了一个命名队列:生产者往该命名队列发送消息.消费从从该命名队列中消费消息.在本章中,我们将创建一个工作队列,用于在多个工作者之间分配耗时的任务.工作队列(即任务队列)的主要思想 ...
- 动态引入js
function loadScript(url, callback){ var script = document.createElement("script") ...
- Lr中脚本的迭代次数和场景运行时间的关系
Loadrunner中脚本的迭代次数和场景运行时间的关系 LR 的Vugen和controller中迭代是这样的: 当场景的持续时间为“运行至结束”时,以Vugen中设置的迭代次数为准 当场景的持续时 ...
- HTML 如何显示英文单、双引号
// 过滤英文引号替换成中文引号 function pregstring($str){ return preg_replace('/"([^"]*)/','"${1 ...
- ScrureCRT访问CentOS时出现乱码的解决办法
1. ScrureCRT访问CentOS时,出现乱码. 登陆后,输入日历命令:cal 输出日历带有乱码的结果: 2. 查看当前系统的语言. 输入命令:echo $LANG 输出:zh_CN.UTF ...
- Python并发编程-守护进程
守护进程 子进程转换为守护进程 主进程的代码结束,子进程的代码也应该接收, 这个事情有守护进程来做 守护进程会随着主进程的代码执行完毕而结束, 而不是随着主进程的接收而结束(子进程不一定结束) fro ...
- 初拾Java(问题一:404错误,页面找不到)
做测试尤其是想走自动化测试之路的人,怎么可以不会码代码?!怒了... 再次开始拾起Java,坚持坚持!!! 刚写了一个JSP页面,想在Myeclipse里面跑来试试,结果搞了半天出现以下错误: 试着去 ...