2016-07-29 22 views
0

Ich muss Tomcat Server mit Ant-Skript starten und stoppen, aber ich habe ein Skript auf Stack Overflow gefunden, aber wenn ich es benutze, gibt es unten genannten Fehler.Wie verwende ich ein Ant-Skript, um den Tomcat-Server zu starten und zu stoppen?

<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> 

und die Fehlermeldung, die ich unter bin immer:

Das Skript und die Nachricht auf der Konsole I bin immer unten erwähnt

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> 

Antwort

0

Unser Build-Skript ist ziemlich alt, so kann es bessere Möglichkeiten, das zu tun, aber wir verwenden

<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> 

die os.command_interpreter ist entweder /bin/bash auf Linux-Maschinen oder C:\\Windows\\System32\\cmd.exe für Windows-Maschinen. Natürlich müssen Sie auch tomcat.catalina_home und andere Eigenschaften voreinstellen.