Java11JAR命令是否支持classpath参数?
我目前正在学习OCP Java 11认证,目前正在使用基本的JDK命令 在研究指南中有一个复习问题提到Java11JAR命令是否支持classpath参数?,java,jar,java-11,ocpjp,Java,Jar,Java 11,Ocpjp,我目前正在学习OCP Java 11认证,目前正在使用基本的JDK命令 在研究指南中有一个复习问题提到jar命令还支持-cp选项(类路径)。这是真的吗?我不知道这件事,我也没有在网上找到信息 我知道-C选项,提到了要归档的文件所在的路径。另外,java和javac也接受-cp 我开始相信这是学习指南中的错误,但我想先仔细检查一下 这有效吗 jar -cf newJar.jar -cp /sample/dir . 这当然是: jar -cf newJar.jar -C /sample/dir .
jar
命令还支持-cp
选项(类路径)。这是真的吗?我不知道这件事,我也没有在网上找到信息
我知道-C
选项,提到了要归档的文件所在的路径。另外,java
和javac
也接受-cp
我开始相信这是学习指南中的错误,但我想先仔细检查一下
这有效吗
jar -cf newJar.jar -cp /sample/dir .
这当然是:
jar -cf newJar.jar -C /sample/dir .
如果classpath参数确实有效,-cp和-C之间有什么区别?我有点困惑
谢谢。正如您所指出的,文档中没有提到类路径,因此没有理由假设
-cp
指定了它(撇开我甚至不知道jar
可以使用类路径做什么)。还是这样?或者可以将其他选项组合到-cp
?我们怎么能确定?通过查看代码!你试过了吗?是的。我现在使用的笔记本电脑上安装了JDK 8,而我的个人笔记本电脑无法触及,因此问题就来了。这是JDK 8的输出:jar-cvf newJar.jar-classpath dir/-classpath:没有这样的文件或目录。你的学习指南很可能有输入错误,或者你误读了它(值得仔细检查)。有一个-p
选项-但它是--模块路径
的缩写(而jar--help
表示-p,--模块路径位置,模块依赖性用于生成散列)。因此,-cp
将是-c
和-p
,用于创建指定模块路径的存档。不,我还没有进入模块。或者(更好地说)我的意图不是使用模块路径。所以我想这就是解释。我必须提到,当使用-classpath:jar-cvf newJar.jar-classpath dir/时,我得到了相同的输出-classpath:没有这样的文件或目录
为jar
命令指定类路径的预期效果是什么?