build> jar cvfe test\MyJavaLibrary.jar Main -C test\java Main.class foo\SomeClass.class
foo\SomeClass.class : no such file or directory
added manifest
adding: Main.class(in = 444) (out= 308)(deflated 30%)
Die entsprechende Verzeichnisstruktur istjar Befehl Create nicht Datei
build/
test/
java/
foo/
SomeClass.class
Main.class
Es ist sehr seltsam, dass es richtig funktioniert, wenn statt test\java\foo\SomeClass.class
als letztes Argument verwendet wird. Gut, aber das funktioniert nicht, wenn ich das gleiche für das erste Argument tue, das ist test\java\Main.class
. Das Verhalten scheint sehr inkonsistent zu sein.
Warum kann es foo\SomeClass.class
nicht finden, oder besser, was ist der richtige Weg, um das Glas zu erstellen?
java version „1.8.0_102“
Aber das ist, was das '-C test \ java' Flag für ist, nicht wahr? Wie sonst würde es 'Main.class' finden? –
Vielleicht ist nur der erste Pfad von der Option "-C test \ java" betroffen? –
Sie haben Recht, das Argument wirkt sich nur auf die folgende Eingabedatei aus. Siehe die Antwort, die ich hinzugefügt habe. –