Eclipse下maven部署web项目到tomcat7(兼容tomcat8)

1.下载tomcat7并配置好JAVA_HOME,tomcat7\webapps目录除了manager之外,其它都可以删除(删除没用的,可加速tomcat的启动).

2.新建系统变量CATALINA_HOME,值为:C:\opensource\tomcat-7.0.34,在系统变量  Path的最后面添加%CATALINA_HOME%\lib; %CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar   注意它们之间的分号,一定是英文的分号。

3.tomcat7\conf\tomcat-users.xml加入

    <role rolename="admin-gui" />
    <role rolename="manager-gui" />
    <role rolename="manager-script"/>
    <user username="admin" password="eteda" roles="admin-gui,manager-gui,manager-script"/>

当然用户名和密码可以不一样,但没有manager-gui就不能通过浏览器去访问manage应用,没有manager-script就不能通过manage去上传war包达到部署的目的.

3.配置maven的setting.xml

修改%MAVEN_HOME%\conf\setting.xml(前提是在myeclipse preferences中maven启用本地安装版本并设置用户setting.xml为本地conf下的setting.xml)。

在<servers>标签中加入

<server>
       <id>tomcat7</id>
       <username>admin</username>
       <password>admin</password>
</server>

注意这里用户名、密码必须为manager-gui角色的用户,这里设置需要与之前tomcat配置时的角色分配对应起来。

4.在web项目的pom.xml的一个应用例子(注:url也必须有/text,否则也上传不了war包)

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.test</groupId>
    <artifactId>testweb</artifactId>
    <packaging>war</packaging>
    <version>1.0</version>
    <name>testweb Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.deploy>deploy</project.deploy>
        <project.tomcat.version>8.0.0-RC5</project.tomcat.version>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>

<!--
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
                <executions>
                    <execution>
                        <id>copy-resources</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>resources</goal>
                        </goals>
                        <configuration>
                            <encoding>UTF-8</encoding>
                            <outputDirectory>${project.build.directory}/${project.deploy}</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/main/resources/</directory>
                                    <includes>
                                        <include>*.xml</include>
                                    </includes>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <archive>
                        <addMavenDescriptor>false</addMavenDescriptor>
                    </archive>
                    <outputDirectory>${project.build.directory}/${project.deploy}</outputDirectory>
                </configuration>
                <executions>
                    <execution>
                        <phase>process-classes</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <configuration>
                            <excludes>
                                <exclude>*.properties</exclude>
                            </excludes>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
 -->

            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <username>username</username>
                    <password>password</password>
                    <path>/${project.artifactId}</path>
                </configuration>
            </plugin>

        </plugins>
    </build>
    <dependencies>
        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-servlet-api</artifactId>
            <version>${project.tomcat.version}</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
</project>

5.tomcat7要先启动,在命令行转到项目目录下输入d:\maven3\bin\mvn tomcat7:deploy看结果.(注:不是tomcat:deploy)

在eclipse配置好外部的maven,在eclipse的run configurations建一个Maven Build:Name随便起一个名字(如tomcat7_redeploy),Base directory选项目目录${workspace_loc:/testweb},goals填tomcat7:deploy.或tomcat7:redeploy

deploy:如果已经部署过,再deploy就会失败.去tomcat7的webapps删除已经部署过的就行了.

6.五个必须掌握的maven命令

1). mvn help:describe 你是否因为记不清某个插件有哪些goal而痛苦过,你是否因为想不起某个goal有哪些参数而苦恼,那就试试这个命令吧,它会告诉你一切的. 参数: 1. -Dplugin=pluginName 2. -Dgoal(或-Dmojo)=goalName:与-Dplugin一起使用,它会列出某个插件的goal信息,如果嫌不够详细,同样可以加-Ddetail.(注:一个插件goal也被认为是一个 “Mojo”) 下面大家就运行mvn help:describe -Dplugin=help -Dmojo=describe感受一下吧!

2). mvn archetype:generate 你是怎么创建你的maven项目的?是不是像这样:mvn archetype:create -DarchetypeArtifactId=maven-archetype-quickstart -DgroupId=com.ryanote -Dartifact=common,如果你还再用的话,那你就out了,现代人都用mvn archetype:generate了,它将创建项目这件枯燥的事更加人性化,你再也不需要记那么多的archetypeArtifactId,你只需输入archetype:generate,剩下的就是做”选择题”了.

3). mvn tomcat:run 用了maven后,你再也不需要用eclipse里的tomcat来运行web项目(实际工作中经常会发现用它会出现不同步更新的情况),只需在对应目录(如/ryanote)里运行 mvn tomat:run命令,然后就可在浏览器里运行http://localhost:8080/ryanote查看了.如果你想要更多的定制,可以在pom.xml文件里加下面配置: 01 02 03 04 org.codehaus.mojo 05 tomcat-maven-plugin 06 07 /web 08 9090 09 10 11 12 当然你也可以在命令里加参数来实现特定的功能,下面几个比较常用: 1. 跳过测试:-Dmaven.test.skip(=true) 2. 指定端口:-Dmaven.tomcat.port=9090 3. 忽略测试失败:-Dmaven.test.failure.ignore=true 当然,如果你的其它关联项目有过更新的话,一定要在项目根目录下运行mvn clean install来执行更新,再运行mvn tomcat:run使改动生效.

4). mvnDebug tomcat:run 这条命令主要用来远程测试,它会监听远程测试用的8000端口,在eclipse里打开远程测试后,它就会跑起来了,设断点,调试,一切都是这么简单.上面提到的那几个参数在这里同样适用.

5). mvn dependency:sources 故名思义,有了它,你就不用到处找源码了,运行一下,你项目里所依赖的jar包的源码就都有了

下面介绍几个常用的Goal

命令 描述
tomcat:deploy 部署一个web war包
tomcat:reload 重新加载web war包

tomcat:start

启动tomcat

tomcat:stop

停止tomcat

tomcat:undeploy

停止一个war包
tomcat:run 启动嵌入式tomcat ,并运行当前项目
时间: 2024-10-26 06:14:03

Eclipse下maven部署web项目到tomcat7(兼容tomcat8)的相关文章

Eclipse下Maven新建Web项目index.jsp报错完美解决(war包)

Eclipse下Maven新建Web项目步骤 1. 2. 3. 4. 5. 问题描述 最近用eclipse新建了一个maven项目,结果刚新建完成index.jsp页面就报错了,先把错误信息贴出来看看! 解决方法 第一种:直接在pom.xml文件中添加jar包支持 <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <

Eclipse下如何部署WEB项目?

一直使用MyEclipse,今天下班的时候,同事跟我说一个项目需要部署到eclipse上,他还特意强调可以问XX开发人员,我心想:这有什么难的?自己搞定就行了,能不麻烦就别麻烦了吧.不过发现确实有点不好弄,记录一下这小小的成就.哈哈! 第一步:先启动Eclipse(这个步骤的图片就省略了) 第二步:在Workspace中已经将项目从SVN上下载好了,所以这一步就是如何把项目导入eclipse里面了.如图 之后进入下面页面: 接着选择要导入的文件: 第三步:导入完成后,如下图: 接下来进入真正的配

Eclipse使用Maven构建web项目

Eclipse使用Maven构建web项目 博客分类: J2EE 1.创建Maven项目: 点击“File”菜单,或者通过工具栏的“New”创建Project,如下图所示: 选择Maven->Maven Project,弹出向导对话框,如下图所示: 选中Create a simple project……复选框,其它的设置不变,并点击Next,输入maven项目必须的信息(groupId,artifactid,version),如下图所示: 这里需要选择Packaging,web项目一般选择war

eclipse构建maven的web项目(转)

使用Eclipse的maven构建一个web项目 1.选择建立Maven Project 选择File -> New -> Other,在New窗口中选择 Maven -> Maven Project:点击next 2.选择项目路径 Usedefault Workspace location默认工作空间 3.选择项目类型 在Artifact Id中选择maven-archetype-webapp 4 .输入Group ID和 Artifact ID,以及Package Group ID一

eclipse 用maven创建web项目

Eclipse 用maven构建web项目 (2013-01-27 11:05:31) 转载▼ 标签: it eclipse maven spring web 杂谈   一.背景介绍 对于初学者,用maven构建项目并不是一件容易的事,springmvc并不是MVC中的主流,但是本人觉得springmvc比struts要好用,真正做到了零配置.一次使用,就放不下了. 二.准备工作 1.Eclipse 3.7 2.maven 3.Eclipse 需要安装maven插件.url:maven - ht

eclipse中MAVEN的web项目部署至TOMCAT的步骤

一.建立一个maven  WEB项目 1.file->new->other 2. 进入项目类型选择对话框,如下图.我们选择Maven->Maven Project.然后点击next按钮. 3.进入工作空间选择对话框:如下图.Location->browse选择一个文件夹作为你的项目工作空间,也就是新建项目的磁盘存储位置.然后点击next按钮,进入下一步. 4.进入maven项目类型选择对话框,如下图. 我们选择Artifact Id为maven-arrchetype-webapp.

Maven实现直接部署Web项目到Tomcat7(转)

转载自:http://my.oschina.net/angel243/blog/178554 以前在项目中很少使用Maven,最近自己学习了一下maven,真的是非常强大的项目构建工具,对于依赖包的定义及版本,以及依赖包的集中管理(中央仓 库)都让人惊喜(原谅我的大惊小怪,虽然Maven出来很久了,但小弟刚接触),但发现开发Web项目时,需要手动部署到Web服务器 (Tomcat7),如果能自动部署到Web服务器,而不用每次手动把target下编译好的war包拷贝到Tomcat下就更好了. 下面

eclipse构建maven的web项目

转载:http://blog.csdn.net/smilevt/article/details/8215558/ 使用Eclipse的maven构建一个web项目 1.选择建立Maven Project 选择File -> New -> Other,在New窗口中选择 Maven -> Maven Project:点击next 2.选择项目路径 Usedefault Workspace location默认工作空间 3.选择项目类型 在Artifact Id中选择maven-archet

eclipse中Maven创建WEB项目

刚刚学到Maven的时候总是容易忽视到一些创建Maven项目是的步骤, 这里记录笔者熟悉一种,直接创建Maven Project 下面开始吧--- 选择web-app,没得说,然后那些groupID  artifactID随便填 刚创建出来回有错误,这是编译时没有servlet 的API,可以在pom.xml中添加,看图 然后手动补充目录,补全,成下图即可, 特别说明,若出现补能补,already exist的错误,看下 把这里有错误标记的remove掉,就可以了.那些目录现在都还不存在呢 补全