Ant externe .jar
Möchte ich auch auf externe jar in mein java-Projekt. Ich bin mit ant. Externe .jar im Ordner lib. Meine build.xml sieht so ähnlich:
<?xml version="1.0" encoding="UTF-8"?>
<project>
<path id="classpath">
<fileset dir="lib" includes="**/*.jar"/>
</path>
<target name="clean">
<delete dir="build"/>
</target>
<target name="compile">
<mkdir dir="build"/>
<javac srcdir="src" destdir="build" classpathref="classpath" />
</target>
<target name="jar">
<mkdir dir="trash"/>
<jar destfile="trash/test.jar" basedir="build">
<zipgroupfileset dir="lib" includes="**/*.jar"/>
<manifest>
<attribute name="Main-Class" value="com.Test"/>
</manifest>
</jar>
</target>
<target name="run">
<java jar="trash/test.jar" fork="true"/>
</target>
</project>
Aber es funktioniert nicht. Wenn ich importieren möchten etwas von der externen .jar, es ist ein Fehler nach dem Befehl ant compile
: package com.etwas, das nicht vorhanden ist.. Was soll ich Bearbeiten, um es arbeiten?
Genaue Fehler:
Compiling 23 source files to xy/build
xy/src/com/Test.java:5: package com.thoughtworks.xstream does not exist
import com.thoughtworks.xstream.*;
^
1 error
- Bearbeiten können Sie Ihre Frage geben Sie uns die genaue Fehlermeldung?
- Ich habe die genaue Fehlermeldung.
- Sie können keine externen libraries einfach in ein normales Glas. Sie benötigen spezielle Aufgaben, wie das one-jar um zu erreichen, dass.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie versuchen, ohne den includes-Attribut:
Und in der jar-Teil, den Sie beinhalten den Unterricht wie diese:
Können Sie nicht externe Bibliotheken in ein jar und erwarten, dass der classloader zu verwenden, diese Gläser. Leider wird dies nicht unterstützt.
Gibt es ant-tasks wie Glas, die Ihnen helfen, zu erstellen Sie eine jar-Datei, die enthält alles, was Sie brauchen.
Dieses bit wird von der hintergrund-Informationen von Glas:
Andere Alternative:
Ich auch mit ant eine Reihe von dependency-JARs in mein GLAS. Meine compile-task sieht wie folgt aus. Vielleicht etwas ähnliches wird für Sie arbeiten.
manchmal kann u verwenden jar-Inhalte direkt, einfach entpacken