CATALINA_HOMEに言及するだけでは機能しません。 Antのクラスパスにcatalina-antのjarファイルを置く必要があります。 tomcat 7では、この目的のために4つのjarファイルがありましたが、これまでのバージョンではjarファイルは1つしかありませんでした。これに従ってくださいlink。
リンクからの引用として、
Tomcatマネージャが カタリナ-ANTで使用するように構成されていることを確認し、で開始します。ユーザーTOMCAT_HOME/conf/tomcat-users.xml
のいずれかのロール にmanager-script
が含まれていることを確認してください。 例えば:Tomcatの6
<tomcat-users>
<user name="admin" password="s3cr£t" roles="manager-gui,manager-script"/>
</tomcat-users>
カタリナ-ANTは、単一のJARファイル内に封入しました。 Catalina-Ant for Tomcat 7には4つのJARファイルが必要です。一つTOMCAT_HOME/bin
から:
TOMCAT_HOME/lib
から
tomcat-juli.jar
と3:
catalina-ant.jar
tomcat-coyote.jar
tomcat-util.jar
ANTにJARファイルを利用可能にすることの少なくとも3つの方法があります。
JARをANT_HOME/lib
フォルダにコピーします。それで、Antはただ見つけます。
JARをソース管理システムにチェックインするプロジェクト内のフォルダにコピーします。 Antはそれらを見つけるために、パスIDが必要です。catalina-ant-dir
あなたがすべてのマシンあなたにAntのインストールを変更する を必要としないこの方法で、JARファイルとディレクトリがある
<path id="catalina-ant-classpath">
<fileset dir="${catalina-ant-dir}">
<include name="catalina-ant.jar"/>
<include name="tomcat-coyote.jar"/>
<include name="tomcat-util.jar"/>
<include name="tomcat-juli.jar"/>
</fileset>
</path>
ビルド Tomcat 7インストールから直接JARにアクセスしてください。Antは、その後 はそれらを見つけるためにパスIDが必要です。
<path id="catalina-ant-classpath">
<fileset dir="${appserver.lib}">
<include name="catalina-ant.jar"/>
<include name="tomcat-coyote.jar"/>
<include name="tomcat-util.jar"/>
</fileset>
<fileset dir="${appserver.home}/bin">
<include name="tomcat-juli.jar"/>
</fileset>
</path>
appserver.libにTomcat 7のlibディレクトリへのパスです
と appserver.home
Tomcatのトップレベルインストールしたディレクトリへのパスです。 この方法でTomcat 7はあなたが構築するすべてのボックスに必要です。
私の個人的な好みは上記の2つです。
これで、あなたのAntスクリプトでカタリナ・アリJARが表示され、 には利用可能なタスクが表示されます。これらは、Antに利用可能なタスクのうちのほとんどではありませんが、 タスクです。
<taskdef name="catalina-deploy" classname="org.apache.catalina.ant.DeployTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-list" classname="org.apache.catalina.ant.ListTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-reload" classname="org.apache.catalina.ant.ReloadTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-findleaks" classname="org.apache.catalina.ant.FindLeaksTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-resources" classname="org.apache.catalina.ant.ResourcesTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-start" classname="org.apache.catalina.ant.StartTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-stop" classname="org.apache.catalina.ant.StopTask" classpathref="catalina-ant-classpath"/>
<taskdef name="catalina-undeploy" classname="org.apache.catalina.ant.UndeployTask" classpathref="catalina-ant-classpath"/>
最後に、あなたが実際に作業を行う一連のタスクを必要としています。けれども、あなたが上記を参照できるように、私は以下のものを使用する傾向があるいくつかのタスクがあります。
<target name = "stop-webapp">
<catalina-stop url="${tomcat.manager.url}"
username="${tomcat.username}"
password="${tomcat.password}"
path="/${webapp.name}"
failonerror="false"/>
</target>
<target name = "start-webapp">
<catalina-start url="${tomcat.manager.url}"
username="${tomcat.username}"
password="${tomcat.password}"
path="/${webapp.name}"/>
</target>
<target name = "undeploy-webapp">
<catalina-undeploy url="${tomcat.manager.url}"
username="${tomcat.username}"
password="${tomcat.password}"
path="/${webapp.name}"
failonerror="false"/>
</target>
<target name = "deploy-webapp">
<catalina-deploy url="${tomcat.manager.url}"
username="${tomcat.username}"
password="${tomcat.password}"
path="/${webapp.name}"
war="file:${war.file}"/>
</target>
tomcat.manager.url
はどこTomcatマネージャ生活URLです。これは です。Tomcat 6からTomcat 7への変更のもう1つです。通常これは :http://:8080/manager/text
となります。
Tomcat.username
およびTomcat.password
は、Tomcatマネージャのユーザー名とパスワード です。
webapp.name
は、 配備のTomcatアプリケーションの名前です。
war.file
は、WAR ファイルを展開するTomcatアプリケーションのパスです。
あなたはより多くの情報を与えることができますか?たとえば、ビルドファイルのtaskdef部分です。 – coolcfan
警告の原因となるコード行に追加されました – Arvin