使用ant部署eclipse开发的web工程到tomcat

由于myeclipse体积的不断膨胀,搞的现在的开发很痛苦,一直在等它"活"过来,就算不计较效率了,人也忍受不了。所以觉得使用eclipse,毕竟它比myeclipse轻巧的多。但是eclipse开发的web工程要部署到tomcat服务器上好像不可以(我指的是像myeclipse那样将工程拷贝到tomcat的目录下),至少到目前为止,我个人没发现使用eclipse本身能把web工程部署到tomcat服务器上。恕小弟愚见,如果哪位大侠知道eclipse有这样的功能还请赐教。而且eclipse自己配置的服务器个人感觉也不是很爽,居然建立了一个Servers目录!为了解决以上所提到的问题。我想到了Ant,使用Ant工具应该是可以完成这样的需求的。Ant以前也没写过,边学边写,基本上是搞定了以上的问题。特与各位大侠分享:手机充值:http://yjck67.taobao.com,自己的小店

首先,我们说web工程的部署实际上是将WebConten(myeclipse是WebRoot)目录下的所以东东拷贝到tomcat服务器上,奔于这样的想法,所以就用ant的copy命令复制就是,看代码:

<!--部署web工程-->
 <target name="copyPro" depends="clean">
    <!--在tomcat下建立工程的目录-->
    <mkdir dir="${apps.dir}"/>
    <!--copy应用的目录到tomcat的webapps下-->
    <copy todir="${apps.dir}" >
     <fileset dir="${srcDic.dir}"></fileset>
    </copy>
  <!--copy已编译的class文件到WEB-INF目录下-->
  <copy todir="${apps.dir}\WEB-INF" >
   <fileset dir="${basedir}\build"></fileset>
  </copy>
   </target>

以上是之前写的代码,2011-11-21新的如下:以供参考

 

<?xml version="1.0" encoding="UTF-8"?>
<project name="familymanager" basedir="." default="deploy">
<property name="dir.src" location="${basedir}\src" />
<property name="jdk.dir" location="C:\Java\jdk1.6.0_16"/>
<property name="srcDic.dir" value="${basedir}\WebRoot"/>
<property name="dir.lib" location="${basedir}\WebRoot\WEB-INF\lib" />
<property name="dir.classes" location="${srcDic.dir}\WEB-INF\classes"></property>	
<property name="server.dir" value="D:\apache-tomcat-6.0.20"></property>	
<property name="apps.dir" value="${server.dir}\webapps\${ant.project.name}"></property>	
	<!--清理工程目录-->
 	<target name="cleanwebserver" description="清理服务器端工程">
 		<delete dir="${apps.dir}"></delete>
 	</target>
	<target name="clean" description="清理编译的class文件">	
		<echo message="---->clean class files ...."></echo>
		<delete dir="${dir.classes}"></delete>
	</target>
  	
	<target name="compile" depends="clean" description="编译Java代码">
		<echo message="---->compile java files...."></echo>
		  <mkdir dir="${dir.classes}"/>
			<javac debug="on" includes="**/*.java" destdir="${dir.classes}" executable="${jdk.dir}/bin/javac.exe" compiler="javac1.6" source="1.6" target="1.6" fork="yes" encoding="utf-8" listfiles="yes" memoryInitialSize="128m" memoryMaximumSize="256m">
				<src path="${dir.src}">
				</src>				
				<classpath>
					<fileset dir="${dir.lib}" includes="**/*.jar" />
					<fileset dir="${dir.lib}" includes="**/*.zip" />
				</classpath>				
			</javac>
	</target>
	
	<target name="deploy" depends="compile" description="部署工程">
		<echo message="---->deploy project...."></echo>
		  	<!--在tomcat下建立工程的目录-->
		  	<mkdir dir="${apps.dir}"/>
		  	<!--copy应用的目录到tomcat的webapps下-->
		  	<copy todir="${apps.dir}" >
		  		<fileset dir="${srcDic.dir}"></fileset>
		  	</copy>
			<copy todir="${apps.dir}\WEB-INF\classes" >
				<fileset dir="${dir.src}" includes="*.xml"></fileset>
				<fileset dir="${dir.src}" includes="*.properties"></fileset>
			</copy>
	  	</target>
	<target name="copy-jsp"  description="复制jsp">
			<echo message="---->copy jsp file...."></echo>
			  	<!--在tomcat下建立工程的目录-->
			  	<mkdir dir="${apps.dir}"/>
			  	<!--copy应用的目录到tomcat的webapps下-->
			  	<copy todir="${apps.dir}" >
			  		<fileset dir="${srcDic.dir}"></fileset>
			  	</copy>
				<copy todir="${apps.dir}\WEB-INF\classes" >
					<fileset dir="${dir.src}" includes="*.xml"></fileset>
					<fileset dir="${dir.src}" includes="*.properties"></fileset>
				</copy>
		  	</target>
	
</project>

 

是不是很简单,到这,eclipse下工程的部署就算完成了。

其次,我们再解决tomcat启动的问题,我们同样可以使用Ant解决,使用Ant启动tomcat和关闭tomcat,看代码:

	<!--启动tomcat服务器-->
	<target name="start tomcat" description="start    tomcat ....">
		 <exec executable="${server.dir}/bin/startup.bat" spawn="true" vmlauncher="false">  
		 	 <env key="CATALINA_HOME" value="${server.dir}" />  
		     <arg line="/c start ${server.dir}/bin/startup.bat" />  		  
		 </exec>          
	</target>
	<!--关闭tomcat服务器-->
	<target name="stop tomcat">  
		<java jar="${server.dir}/bin/bootstrap.jar" fork="true">  
			<jvmarg value="-Dcatalina.home=${server.dir}"/>  
			<arg line="stop"/>  
		</java>  
		<waitfor maxwait="5" maxwaitunit="second">  
		      <available file="errors.log"/>  
		</waitfor>  	  
	</target> 

 这样启动的tomcat是最原始的黑窗口显示,如果代码出现问题不便于调试,所以这里推荐一个tomcat的插件,网上很多人推荐的,那就是Sysdeo Tomcat plugin东西,要想去官方网站,还得去google下,百度对国外网站没办法,不过这个东西官方再没更新,321这个版本都好长时间了,幻想着有更方便的应用。下载后将里面的文件整个扔到eclipse的drops目录下启动tomcat即可完成安装。安装完成后进行简单的配置即可,是不是感觉世界又美好了一点点呢。使用ant部署eclipse开发的web工程到tomcat

 

最后说明一**意事项:

1.Ant脚本的<project name="XXX" basedir=".">位置的XXX必须保证和工程的名称一致;

2.工程所以用到的jar文件都必须放到lib目录下,因为本脚本局势copyWebContent目录。

3.好像没啥注意的了,哦,对了,注意:我将这个Ant脚本连同那个插件放到附件上,呵呵!

4.再上传一个ant的使用教程。