hi, ich habe 2 jar-dateien a.jar und b.jar. in b sind interfaces, die a benötigt. b liegt in einem anderen verzeichnis.
com.example.ABC ist die klasse mit der main().
startet ABC und gibt dann die fehlermeldung, dass die Interfaces aus b.jar nicht gefunden wurden (das habe ich so erwartet, da b.jar nicht ./dist/ liegt). ABC wird aber gefunden (also a.jar ist im classpath)
versuche ich jetzt b.jar ebenfalls anzugeben oder hänge ich auch nur einen ";" hinter *.jar, findet er nicht mal mehr ABC.
führen also dazu, dass nicht mal mehr a.jar gefunden wird.
interessanterweise funktioniert es aber so:
das geht wieder nicht:
kopiere ich nun b.jar nach ./dist/, dann bekomme ich bei
den fehler:
sehe ich das jetzt richtig, dass man wildcards in zusammenhang mit jars einfach lassen sollte?
warum gibt die verwendung von "*" dann nicht gleich nen error?
bzw. was mache ich hier falsch?
danke!
com.example.ABC ist die klasse mit der main().
Code:
java -cp ./dist/*.jar com.example.ABC
versuche ich jetzt b.jar ebenfalls anzugeben oder hänge ich auch nur einen ";" hinter *.jar, findet er nicht mal mehr ABC.
Code:
java -cp ./dist/*.jar; com.example.ABC
java -cp ./dist/*.jar;b.jar com.example.ABC
java -cp ./dist/*.jar;./b.jar com.example.ABC
interessanterweise funktioniert es aber so:
Code:
java -cp ./dist/a.jar;./b.jar com.example.ABC
das geht wieder nicht:
Code:
java -cp ./dist/a.jar;./*.jar com.example.ABC
kopiere ich nun b.jar nach ./dist/, dann bekomme ich bei
Code:
java -cp ./dist/*.jar com.example.ABC
Code:
.. NoClassDefFoundError: //dist/a/jar
sehe ich das jetzt richtig, dass man wildcards in zusammenhang mit jars einfach lassen sollte?
warum gibt die verwendung von "*" dann nicht gleich nen error?
bzw. was mache ich hier falsch?
danke!