[英]How to connect to remote server and start/stop the Tomcat that's running on that particular server using Ant?
[英]How to use an Ant script to start and stop Tomcat server?
我需要使用Ant腳本啟動和停止Tomcat服務器,但是我在Stack Overflow上找到了一個腳本,但是當我使用它時,它給出了下面提到的錯誤。
我在控制台上收到的腳本和消息如下:
<project name="sample">
<property name="name" value="sample"/>
<path id="catalina-ant-classpath">
<fileset dir="C:\Users\vivsharm\Downloads\apache-tomcat-7.0.64-windows-x64\apache-tomcat-7.0.64\lib">
<include name="catalina-ant.jar"/>
</fileset>
</path>
<taskdef name="start" classname="org.apache.catalina.ant.StartTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<taskdef name="stop" classname="org.apache.catalina.ant.StopTask">
<classpath refid="catalina-ant-classpath"/>
</taskdef>
<target name="start" description="Start Tomcat application">
<start url="http://localhost:8080/"
username="uname"
password="pwd"/>
</target>
<target name="stop" description="Stop Tomcat application">
<stop url="http://localhost:8080/"
username="uname"
password="pwd"/>
</target>
</project>
和我得到的錯誤信息如下:
C:\StartAndStopTomcat>ant start
Buildfile: C:\StartAndStopTomcat\build.xml
start:
BUILD FAILED
C:\StartAndStopTomcat\build.xml:19: Must specify 'path' attribute
Total time: 0 seconds
C:\StartAndStopTomcat>ant stop
Buildfile: C:\StartAndStopTomcat\build.xml
stop:
BUILD FAILED
C:\StartAndStopTomcat\build.xml:24: Must specify 'path' attribute
Total time: 0 seconds
enter code here
C:\StartAndStopTomcat>
我們的構建腳本已經很老了,因此可以有更好的方法來實現,但是我們使用
<property name="tomcat.bin.dir" location="${tomcat.catalina_home}/bin" />
<property name="tomcat.startup.file" location="${tomcat.bin.dir}/startup${os.script_extension}" />
...
<target name="tom-start" description="start tomcat server">
<echo message="starting ${tomcat.catalina_base}" />
<exec executable="${os.command_interpreter}">
<arg line="${os.command_interpreter.mandatory_argument}" />
<arg line="${tomcat.startup.file}" />
<env key="CATALINA_BASE" value="${tomcat.catalina_base}" />
<env key="JAVA_HOME" value="${javac.jdk.dir}" />
<env key="JRE_HOME" value="${javac.jdk.dir}" />
<env key="JAVA_OPTS" value="${JAVA_OPTS}" />
</exec>
</target>
<target name="tom-shut" description="stop tomcat server (remember that it might not shut down immediately)">
<echo message="shutting down ${tomcat.catalina_base}" />
<exec executable="${os.command_interpreter}">
<arg line="${os.command_interpreter.mandatory_argument}" />
<arg line="${tomcat.shutdown.file}" />
<env key="CATALINA_BASE" value="${tomcat.catalina_base}" />
<env key="JAVA_HOME" value="${javac.jdk.dir}" />
<env key="JRE_HOME" value="${javac.jdk.dir}" />
</exec>
</target>
os.command_interpreter
在Linux機器上是/bin/bash
在Windows機器上是C:\\\\Windows\\\\System32\\\\cmd.exe
。 當然,您還需要預先設置tomcat.catalina_home
和其他屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.