3

最初に注意してください: .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 ファイルを含める必要があります。あなたが私を助けてくれることを願っています。

4

2 に答える 2

3

コンパイル済みの .class ファイルのフォルダーを含めることはできますが、.java ソース ファイルを含めることはできません。

于 2012-09-07T22:11:52.623 に答える
0

javac では複数の src 要素を使用できます。これは次のようになります。

<javac destdir="some_dir" classpath="some_classpath" ... >
   <src path="some_source" />
   <src path="some_other_source"/>
 </javac> 
于 2014-01-17T08:01:23.080 に答える