用ant远程部署到Tomcat5

朋友的让我解决下多台服务器部署的问题.首选ANT的远程发布,好像有3种方式:

1.用FTP上传文件

2.tomcat的部署管理程序

3.用telnet (这个不会)

我选tomcat的部署管理程序,tomcat5不带admin管理功能,要下apache-tomcat-X.X.X-admin.zip 文件,版本别搞错了.

http://archive.apache.org/dist/tomcat/自己看着下载程序吧!

下载好后,覆盖原tomcat5目录.

改conf/tomcat-users.xml 文件为

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="tomcat"/>
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="admin" password="admin" roles="admin,manager"/>
</tomcat-users>

 启动tomcat.点左边的Tomcat   Manager,输入后,进管理页面,OK.说明没问题

 

开始ant配置

如是elicpse下运行ant,进入首选项->ant->runtime->classpath->ant home entires 点add exteranl jars

选D:\apache-tomcat-5.5.27\server\lib\catalina-ant.jar,OK

 

如果是命令行运行ant ,在ant\lib加入catalina-ant.jar文件,

build.xml

<!-- 导入ant发布命令 -->
<taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask" />   
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask" />   
<taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask" />   


<property name="project.name" value="XXX"/>
<property name="tomcat.home" value="D:\apache-tomcat-5.5.27"/>
<!-- tomcat参数 -->
	<property name="tomcat.server" value="127.0.0.1"/>
	<property name="tomcat.username" value="admin"/>
	<property name="tomcat.password" value="admin"/>
	<property name="tomcat.port" value="8080"/>
	<property name="tomcat.project.path" value="/${project.name}"/>
	<property name="tomcat.server.url" value="http://${tomcat.server}:${tomcat.port}"/>
	<property name="tomcat.deploy.url" value="http://${tomcat.server}:${tomcat.port}/manager"/>


<!-- 运行命令 -->
<target name="deploy-TOMCAT">
	<echo message="deploy start" />
	<deploy url="${tomcat.deploy.url}" username="${tomcat.username}" password="${tomcat.password}" path="${tomcat.project.path}" war="file:${project.war.filepath}" update="true" />
	<echo message="deploy end" />
</target>

<target name="undeploy-TOMCAT">
	<echo message="undeploy start" />
	<undeploy url="${tomcat.deploy.url}" username="${tomcat.username}" password="${tomcat.password}" path="${tomcat.project.path}"  war="file:${project.war.filepath}" update="true" />
	<echo message="undeploy end" />
</target>

<target name="reload-TOMCAT">
	<echo message="reload-TOMCAT start" />
	<reload url="${tomcat.deploy.url}" username="${tomcat.username}" password="${tomcat.password}" path="${tomcat.project.path}"  update="true" />
	<echo message="reload-TOMCAT end" />
</target>

 

${tomcat.project.path}是war文件 ,我这是D:\workspace\ssh\dist\ssh.war,自已配下吧

 

OK.不过要先运行tomcat,再ant,否则报错

你可能感兴趣的:(apache,tomcat,ant,ssh,配置管理)