有可能在我班上的另一个罐子里面运行一个罐子吗?
我正在尝试从我的班级运行此命令
java -cp //file:/D:/Users/nb38tv/workspace/f2e-core/f2e-mock/f2e-test-framework/target/f2e-test-framework-1.8.3-SNAPSHOT.jar!/h2/sakila-h2-master/h2-1.3.161.jar -ifExists -tcp -web -tcpAllowOthers
但是java抱怨因为找不到jar。
如果我从路径中移除!
,则会收到此错误
Unrecognized option: -ifExists
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
答案 0 :(得分:1)
不可能执行这样的jar中嵌入的jar,但即使可能,您的Java命令行也是不正确的。这是因为-ifExists
(以及其他选项)被解释为java
可执行文件的命令行选项。
如果从h2-1.3.161.jar
中提取f2e-test-framework-1.8.3-SNAPSHOT.jar
并尝试使用相同的命令行执行它,您将收到相同的错误消息。
它需要使用-jar
而不是-cp
,或者您需要指定要在-ifExists
之前运行的类。