私は、メインメソッドを持つjavaクラスのFile定義を持っています。Eclipse実行メニューとAntビルドファイルの両方から相対パスを使用して実行できるようにしたいと考えています。Antからの相対パスでJavaクラスを実行するにはどうすればよいですか?
Eclipseの実行メニューからmainメソッドを実行している場合にのみ機能します。
private static final File location = new File("./implementation/src/xml/data");
のAntで実行している場合にのみ機能します。
:private static final File location = new File("./src/xml/data");
プロジェクトは、このように構成されています
MyProject
|
|
implementation
| |
| |
src build.xml
これはAntタスクです。
<target name="run">
<java classname="test.XMLCreator" classpathref="compile-classpath" >
<classpath>
<pathelement location="${classes}" />
</classpath>
</java>
</target>
これは、Antではビルドファイルの場所に相対的なパスで、Javaクラス内ではソースのルートディレクトリからの相対パスであるためです。
Antタスク内のベースディレクトリを上書きする方法はありますか?
これはうまくいきましたが、fork = "true" –