Maven项目在eclipse上进行热部署

   最近本人在学习Maven,觉得Maven管理确实很方便。Maven项目能够在eclipse上进行热部署,那就更好了。总结了前人的一些用法,有两种方法可以实现热部署。

   方法一:

   在eclipse按照Maven插件就不累赘了,能够google到很多信息。第一种方法我们就采用Maven的打包上传的方式实现。

  第一步:创建项目一个Maven项目。


 第二步:在项目上点击右键
 build path  ->  configure build path ->Source

 将src/main/java和src/main/sources 源文件夹的Output folder指向 target/classes

 将跟test相关的源文件夹的Output folde指向target/test-classes。

第三步:项目右键 -> properties -> project Facets

将Dynamic Web Module勾选上,版本根据自己的需要选上。在右边runtimes新加上tomcat环境,这样就会把javaee依赖的jar导入大项目中。


第四步:配置tomcat的用户信息。进入tomcat的conf目录,编辑tomcat-user.xml文件夹。

<role rolename="manager"/> 
  
<role rolename="manager-script"/> 

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

 在修改Maven conf目录中的settings.xml文件,添加

    <server>
      <id>tomcat</id>
      <username>tomcat</username>
      <password>tomcat</password>
    </server>

 第五步:修改pom.xml

<plugins>
 
  <plugin>
 
    <groupId>org.codehaus.mojo</groupId>

    <artifactId>tomcat-maven-plugin</artifactId>

    <version>1.1</version>  

  <configuration>
 
    <url>http://localhost:8080/manager/text</url>
 
    <server>tomcat</server>

    <path>/tomcattest</path>
 
    </configuration>
 
  </plugin>
 
</plugins>
 
</build>

 如果tomcat 6,则<url>http://localhost:8080/manager/text</url>改为<url>http://localhost:8080/manager/</url> 

到现在,所有的修改工作已经完成。

在到项目上run as ->  mvn build .在goals中输入package tomcat:deploy。Maven将项目打包宾部署到tomcat中。经测试成功。

 

 

方法二:

     方法二就是把Maven项目变成传统项目一样的。修改tomcat中的server.xml,指向到项目径路上。

     在方法一的第二步,将src/main/java和src/main/sources 源文件夹的Output folder指向src/main/webapp/WEB-INF/classes

 将跟test相关的源文件夹的Output folde也指向src/main/webapp/WEB-INF/classes。这样,所有的文件都将编译到classes文件夹下边,如果在把jar复制到WEB-INF中,就跟传统的项目文件路径一样了。

 

 修改pom.xml让jar部署到WEB-INF中去。

<build>
    <finalName>example</finalName>
    <sourceDirectory>src/main/java</sourceDirectory>
    <testSourceDirectory>src/test/java</testSourceDirectory>
    <resources>
    	<resource>
    		<directory>src/main/resources</directory>
    	</resource>
    </resources>
    <testResources>
    	<testResource>
    		<directory>src/test/resources</directory>
    	</testResource>
    </testResources>
    <outputDirectory>src/main/webapp/WEB-INF/classes</outputDirectory>
    <testOutputDirectory>src/main/webapp/WEB-INF/classes</testOutputDirectory>
    <pluginManagement>
    <plugins>
    	<plugin>
		    <groupId>org.apache.maven.plugins</groupId>
		    <artifactId>maven-dependency-plugin</artifactId>
		    <version>2.8</version>
		    <configuration>
		    	<outputDirectory>src/main/webapp/WEB-INF/lib</outputDirectory>
		    	<excludeTransitive>false</excludeTransitive>
		    	<stripVersion>true</stripVersion>
		    </configuration>
    	</plugin>
    </plugins>
    </pluginManagement>
  </build>

 

 再run as -> maven build -> 在goals中 输入 dependency:copy-dependencies

所有的jar都部署到WEB-INF/lib中去了,就跟传统的项目没有区别了。可以再用jrebel.jar实现热部署。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值