在bash中,编译Java程序后,我创建了一个jar文件并通过以下方式运行它:
jar cvf ./new.jar -C target/classes/myapp/ .
java -classpath new.jar:dependencydir Main
使用-C target/classes/myapp/
将在jar文件中创建平面目录结构是否正确?
如果我不使用-C target/classes/myapp/
,即
jar cvf ./new.jar target/classes/myapp/*.class
然后
java -classpath new.jar:dependencydir Main
在new.jar中找不到Main
,因为jar文件包含非固定目录结构target/classes/myapp
。
如何运行具有非平面目录结构的jar文件?
谢谢。