私のJava Webプロジェクトには<T>
、antスクリプトのようなコードがあり、javacはJDKを使用してJavaコードをコンパイルしていますが、コンパイルに成功しません。
後で、Eclipse JDT を使用してコンパイルする必要があることがわかりました。
そして、Eclipse では、次のように実行すると、ant スクリプトは success.when を実行できます。
build.xml を右クリック ---> 実行 ---> 実行 ---> 外部ツール構成、JRE をクリックし、[ワークスペースと同じ JRE で実行] を選択します。
その後、ant は eclipse で正常に実行できます。
しかし、Tomcat をコンパイル、war、デプロイ、および起動するために、.bat および .sh ファイルを作成して、ant スクリプトを呼び出したいと考えています。したがって、ant はコマンドから実行する必要があります。もっと試してみましたが、常にエラーが発生しました: クラスが見つかりません: org.eclipse.jdt.core.JDTCompilerAdapter
PS、eclipse プラグインの JDT に関する jar ファイルを ant_home/lib ディレクトリにコピーしました。
あなたの応答を願っています。前もって感謝します!
build.xml
`
<tstamp>
<format property="build.time" pattern="yyyy-MM-dd" />
</tstamp>
<path id="project.classpath">
<fileset dir="${lib.dir}">
<include name="**/*.jar" />
</fileset>
<fileset dir="${catalina.home}/lib">
<include name="*.jar" />
</fileset>
<fileset dir="${ant.dir}">
<include name="**/*.jar" />
</fileset>
</path>
<target name="clear">
<delete dir="${build.dir}" />
<delete dir="${dist.dir}" />
<delete file="${catalina.home}/webapps/${webapp.name}.war" />
<delete dir="${catalina.home}/webapps/${webapp.name}" />
</target>
<target name="init" depends="clear">
<mkdir dir="${build.dir}/classes" />
<mkdir dir="${dist.dir}" />
</target>
<target name="compile" depends="init">
<echo message="begin compile..." />
<javac srcdir="${src.dir}" destdir="${build.dir}/classes"
includeantruntime="false" nowarn="on"
source="1.6" target="1.6" deprecation="true" debug="true"
encoding="UTF-8" classpathref="project.classpath">
<compilerarg line="-Xlint:unchecked" />
</javac>
<copy todir="${build.dir}">
<fileset dir="${src.dir}">
<include name="**/*.xml" />
<include name="**/*.properties" />
<include name="**/*.sql" />
</fileset>
<fileset dir="${config.dir}">
<include name="**/*.xml" />
<include name="**/*.properties" />
<include name="**/*.sql" />
</fileset>
</copy>
<echo message="end compile..." />
</target>
<target name="war" depends="compile">
<echo message="begin war..." />
<war destfile="${dist.dir}/${webapp.name}.war" basedir="${webRoot.dir}"
webxml="${webRoot.dir}/WEB-INF/web.xml">
<lib dir="${lib.dir}" />
<classes dir="${build.dir}/classes" />
<fileset dir="${webRoot.dir}">
<include name="***.*" />
</fileset>
</war>
<echo message="end war..." />
</target>
<target name="deploy" depends="war">
<echo message="begin deploy..." />
<copy file="${dist.dir}/${webapp.name}.war" todir="${catalina.home}/webapps" />
<echo message="end deploy..." />
</target>
</project>
`