带有cf -e的java -jar在Java 14上不起作用

问题描述 投票:0回答:1

嗨,我在javac +java+ java -jar周围玩耍,以更多地参与模块。

我正在使用最新的JDK 14。

我哈有这个简单的课程:

package defaultpackage;
public class Main{
    public static final void main(final String args[]){
        System.out.println("HI WITH: "+java.util.Arrays.toString(args));
    }
}

我创建目录没有问题:

javac -d . Main.java

稍后,我可以创建jar文件,将这些值混合在一起使用:

jar --create --file Jar.jar -e defaultpackage.Main defaultpackage
jar -cfe Jar.jar defaultpackage.Main defaultpackage
jar cfe Jar.jar defaultpackage.Main defaultpackage

他们都在清单文件中创建带有类的jar,我可以使用此简单命令运行它:

java -jar Jar.jar

但是我无法执行此命令,与之前的命令略有不同,也许无法混合使用,但我认为可以:

jar -cf Jar.jar -e defaultpackage.Main defaultpackage 

我想说的很好,使用入口点defaultpackage.Main创建Jar.jar文件

但是状态。

jar -cf Jar.jar -e defaultpackage.Main defaultpackage
-e : no such file or directory
defaultpackage.Main : no such file or directory

我也尝试过此方法,但响应相同:

jar -cf Jar.jar defaultpackage -e defaultpackage.Main 

和:

jar -cf Jar.jar -e defaultpackage/Main.class defaultpackage

但也具有相同的响应。

我如何使此命令起作用?我不能混用-cf-e

java jar javac
1个回答
0
投票

我无法混合使用-cf-e

正确。这些选项有点像古老的Unix tar命令,但并不完全相同。您不能同时使用组合字母和单独的选项字母。

© www.soinside.com 2019 - 2024. All rights reserved.