请先注意:我不需要包含 .jar 文件!
我想用 ant 包含来自另一个 java 项目的 .java 文件。但我不知道怎么做,谷歌也不知道。我的 build.xml 看起来像这样:
<project>
<!-- Main properties -->
<property name="projectname" value="rasco" />
<property name="mainclass" value="de.beyermatthias.rasco.Rasco" />
<property name="lib.dir" value="./lib/java-speech-api/src/" />
<path id="classpath">
<pathelement path="${lib.dir}"/>
</path>
<!-- Tasks -->
<!-- Clean Task -->
<target name="clean">
<delete dir="build" />
</target>
<!-- Compile Task -->
<target name="compile" depends="clean" >
<mkdir dir="build/classes" />
<javac srcdir="src" destdir="build/classes/">
</javac>
</target>
<!-- Jar Task -->
<target name="jar" depends="compile" >
<mkdir dir="build/jar" />
<jar destfile="build/jar/${projectname}.jar" basedir="build/classes/">
<manifest>
<attribute name="Main-Class" value="${mainclass}" />
</manifest>
</jar>
</target>
<!-- Run Task -->
<target name="run">
<java jar="build/jar/${projectname}.jar" fork="true" />
</target>
</project>
我的项目层次结构是这样的:
.
├── build
│ └── classes
├── build.xml
├── lib
│ └── java-speech-api
│ ├── CHANGELOG.markdown
│ ├── CREDITS.markdown
│ ├── java-speech-api.iml
│ ├── README.markdown
│ └── src
│ ├── com
│ │ └── darkprograms
│ │ └── speech
│ │ ├── microphone
│ │ │ └── Microphone.java
│ │ ├── recognizer
│ │ │ ├── FlacEncoder.java
│ │ │ ├── GoogleResponse.java
│ │ │ └── Recognizer.java
│ │ └── synthesiser
│ │ └── Synthesiser.java
│ └── META-INF
│ └── MANIFEST.MF
└── src
└── de
└── beyermatthias
└── rasco
└── Rasco.java
大多数教程都谈到在类路径中包含 .jar 文件,但我需要包含 .java 文件,如您所见。我希望你能帮助我。