2016-04-26 2 views
0

Ich habe versucht zu googeln, aber konnte nicht eine richtige funktionierende Lösung .. Verzeichnis besteht aus allen Java-Dateien und externe jarfile (google.guava.jar) .. i will es in einer Batch-Datei ausführen .. Ich habe eine Menge Dinge ausprobiert ... aber immer noch sagt deffclasserror .. kann mir jemand helfen, wie es funktioniert ... (Windows) .. Struktur sieht so aus :Ausführen eines Java-Programms, externe jar-Abhängigkeit in einer Batch-Datei

Ordner
-------- jar-Datei
-------- Java-Datei
-------- bat-Datei

set path="C:\Program Files (x86)\Java\jdk1.8.0_73\bin" 

javac -cp google.guava.jar convertohash 
javac FinalOutput.java 

java convertohash 
java FinalOutput 

pause 
+0

java -Datei -jar yourjarnumber.jar –

Antwort

0

Try this:

"C:\Program Files (x86)\Java\jdk1.8.0_73\bin\java" -cp %YOUR_CLASSPATH%;%YOUR_CLASSPATH_REPORTS%;%EXTRA_LIB% -Djava.library.path=./dll your.main.class 

Vor dieser Zeile, die Sie benötigen, um Ihre YOUR_CLASSPATH Ihre YOUR_CLASSPATH_REPORTS und EXTRA_LIB mit = einzurichten und die Trennung der Konkurrenzen mit ";" (ohne das ""). Zum Beispiel:

SET EXTRA_LIB=.\lib\mysql-connector-java.jar;.\lib\anotherlibrary.jar; etc

Als die „lib“ Ordner derjenige wurden Sie Ihre Bibliotheken speichern, wird die Route muss nicht stricly am Beispiel derjenige gezeigt werden, stellen nur die eine wurden Sie speichern Ihre Bibliotheken (wenn Sie einige von ihnen verwenden).

Denken Sie auch daran, dass wenn Sie diese Fledermaus in mehreren Maschinen verwenden, sie müssen die gleiche jdk installiert und auf der gleichen Route angegeben, oder Sie müssen es manuell ändern, weil die Anwendung nicht gestartet wird.

+0

Ill versuchen Sie dies, aber ich denke, es in Gradle zu tun ist viel einfacher :) –