eclipse下新建maven web工程(是web工程!)以及部署maven web工程到tomcat服务器

一、eclipse新建maven web工程

1、在菜单栏File->New下面找到Maven Project

2、勾选上Create a simple project (不使用骨架),Next


3、填写工程名称和包名,并选择war类型(一定要选war,非常重要!),Finish


4、选择packing是war类型,在main下会生成 webapp目录(选war的重要性之一)


5、使用eclipse发布到tomcat下,需要把项目转成dynamic web project。

选择工程单击右键,选择properties 并找到 Project Facets ,并点击Convert to faceted form…


6、勾选Dynamic Web Module 并点击ok  (3.0只有tomcat7才支持)


7、这时工程结构下会产生一个Web Content目录


8、虽然此时我们可以发布到tomcat中,但这不符合maven的结构,继续操作。

把WebContent下面两个目录 META-INF ,WEB-INF 直接复制到src/main/webapp目录下,并删掉WebContent目录


9、修改发布规则:先择工程单击右键, 选择 Properties,

选择Deployment Assembly:把WebContent Remove掉;测试类我们也不需要发布,test的两个目录页可以remove


10、重新指定WEB路径:点击add,选择Folder


11、在src/main下找到webapp目录,然后finish


12、把当前的build path 指向 Maven Dependency, 回到第9步的图中,直接点击add,选择Java Build Path Entries 然后next




13、完成后如下图


14、进入开发:

(1)pom.xml可以从http://www.mvnrepository.com/ 加入需要jar包的配置路径;

(2)webapp下可以创建web页面的目录结构;

(3)main/java里创建java程序包结构。



二、eclipse部署maven web工程到tomcat服务器(一共三种方法)

第一种方法:打war包到tomcat/webapps目录,通过右键工程-》run as-》maven install会在target目录下生成war包,复制到tomcat/webapps目录即完成部署。(新建maven web工程选war的重要性之二!

第二种方法:使用tomcat-maven插件,在pom.xml的</dependencies>之后添加以下代码,并做相应修改,详细步骤如下:

1、apache-tomcat-7.0.39配置C:\Program Files\apache-tomcat-7.0.39\conf\tomcat-users.xml,因为tomcat7默认情况下没有配置manager访问权限,所以这里需要在tomcat-users.xml加入用户以及权限

<tomcat-users>


    <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="admin" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>

</tomcat-users>
2、 apache-maven-3.0.5配置C:\Program Files\apache-maven-3.0.5\conf\settings.xml,为了让maven可以访问tomcat的权限,所以需要把如上创建的用户添加到settings.xml中,如下

<servers>

    <!-- 配置tomcat-/manager/text 访问权限 -->
    <server>
      <id>tomcat</id>
      <username>admin</username>
      <password>admin</password>
    </server>

  </servers>
3、 工程目录下的pom.xml文件,加入build,并配置tomcat7的maven插件,如下配置

<build>
        <finalName>myApp</finalName>
        <!-- directory缺省情况下指向target --> 
        <!--<directory>${basedir}/target</directory>-->
        <plugins>
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <url>http://localhost:8080/manager/text</url>
                    <!-- server、username、password对应maven的setting下的配置 -->
                    <server>tomcat</server>
                    <username>admin</username>
                    <password>admin</password>
                    <path>/${project.build.finalName}</path>
                    <!-- war文件路径缺省情况下指向target -->
                    <!--<warFile>${basedir}/target/${project.build.finalName}.war</warFile>-->
                </configuration>
            </plugin>
        </plugins>
    </build>
4、启动tomcat,并能正常访问http://localhost:8080/manager

5、然后找到要部署的工程文件根目录下,执行如下maven命令
  > mvn clean:install             //clean是清理输出文件,install编译打包,在每次打包之前必须执行clean,才能保证发布为最新文件
  > mvn tomcat7:redeploy    //第一次发布 tomcat7:deploy,再次发布 tomcat7:redeploy

第三种方法:直接使用servers部署,通过右键servers中tomcat,add and remove...添加项目,重启tomcat即可。


对三种方法做一个总结:第一种很少用(麻烦),第二种适合直接部署到测试服务器,第三种适合本地的调试。


三、搭建maven web工程常见的错误解决方案

1、编译错误

这是由于 你的Maven 编译级别是 jdk1.5 或以下,而你导入了 jdk1.6 以上的依赖包,解决方法是:使用 maven-compiler-plugin 将 maven 编译级别改为 jdk1.6 以上:

<build>
		<plugins>
			<!-- define the project compile level -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.3.2</version>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
				</configuration>
			</plugin>
		</plugins>
	</build>



参考:

http://jingyan.baidu.com/album/9f63fb91a7d2a5c8400f0e20.html?picindex=3

http://blog.csdn.net/defonds/article/details/47974269

http://www.cnblogs.com/guodefu909/p/4874549.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值