在开发web 应用程序的时候,往往要使用 ant 来 build 你的web 应用,然后再 deply 到相应的 application server ,整个过程不免让人觉得繁琐。其实,也可以把 deploy 的工作 集成到 ant 中来,由ant去完成整个工作。在这里就以 tomcat为例子来说一下,期望能起到抛砖引玉 的效果。 首先,要建立build.properties文件,加入下面的配置
deploy.path=D:/tools/Tomcat 5.0/webapps
tomcat.home=D:/tools/Tomcat 5.0
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=admin
tomcat.manager.password=88888888
参数对于用过tomcat的人来说,都很容易理解,需要注意的是"/"一定不要写成"/"了。 然后是build.xml文件的修改。怎么写build.xml我就不在这儿罗嗦了。写好你的build.xml 之后,在其中加入 deploy 的target,如下:
<target name="deploy" depends="build" description="Deploy application">
<copy todir="${tomcat.home}/webapps/${name}" preservelastmodified="true">
<fileset dir="${web.dir}">
<include name="**/*.*"/>
</fileset>
</copy>
</target>
当然你也可以发布war,使用war 的task就行了。
最后,把${tomcat}/ server/lib下的catalina-ant.jar放到你的classpath里面,在 build.xml 中加入启动tomcat 服务的task就行了。
<taskdef name="install" classname="org.apache.catalina.ant.InstallTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="list" classname="org.apache.catalina.ant.ListTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
现在就可以方便地使用ant来完成我们的工作了。
ant
ant deploy
ant install
ant start
ant list
一切正常的话,应该可以看到你的应用了。如果要再次发布,只需要
ant
ant deploy
ant reload
这样就能重新发布你的web 应用了。
注:我使用的是 tomcat 5.5、ant1.5.4
deploy.path=D:/tools/Tomcat 5.0/webapps
tomcat.home=D:/tools/Tomcat 5.0
tomcat.manager.url=http://localhost:8080/manager
tomcat.manager.username=admin
tomcat.manager.password=88888888
参数对于用过tomcat的人来说,都很容易理解,需要注意的是"/"一定不要写成"/"了。 然后是build.xml文件的修改。怎么写build.xml我就不在这儿罗嗦了。写好你的build.xml 之后,在其中加入 deploy 的target,如下:
<target name="deploy" depends="build" description="Deploy application">
<copy todir="${tomcat.home}/webapps/${name}" preservelastmodified="true">
<fileset dir="${web.dir}">
<include name="**/*.*"/>
</fileset>
</copy>
</target>
当然你也可以发布war,使用war 的task就行了。
最后,把${tomcat}/ server/lib下的catalina-ant.jar放到你的classpath里面,在 build.xml 中加入启动tomcat 服务的task就行了。
<taskdef name="install" classname="org.apache.catalina.ant.InstallTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="list" classname="org.apache.catalina.ant.ListTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">
<classpath>
<path location="${tomcat.home}/server/lib/catalina-ant.jar"/>
</classpath>
</taskdef>
现在就可以方便地使用ant来完成我们的工作了。
ant
ant deploy
ant install
ant start
ant list
一切正常的话,应该可以看到你的应用了。如果要再次发布,只需要
ant
ant deploy
ant reload
这样就能重新发布你的web 应用了。
注:我使用的是 tomcat 5.5、ant1.5.4