gpt4 book ai didi

java - 无法运行 .jar 文件/java.jar : line 1: public: command not found

转载 作者:太空宇宙 更新时间:2023-11-04 10:14:04 24 4
gpt4 key购买 nike

我有 Ubuntu 16.04。

并下载了一个带有 tar.gz 文件扩展名的 JDK 并遵循 This wikihow安装它。

当我尝试运行 .jar 游戏(如 Minecraft)时它运行成功,并且我下载了连接到同一个 JDK 的 netbeans 并编译了一些我可以在终端中运行的程序,但是当我输入时:

./Hello_world.jar

这是:

package main;

public class project {

public static void main(String[] args) {
System.out.println("Hello world");
}
}

我得到这个输出:

./Hello_world.jar: line 1: $'PK\003\004': command not found
./Hello_world.jar: line 2: $'\b.\020oK': command not found
./Hello_world.jar: line 3: syntax error near unexpected token `)'
./Hello_world.jar: line 3:-oK�}����META-INF/MANIFEST.MFM�1
�0��@��uHh Q���X� ��N1�Ҧ$)��7�(�p�ww
�A����|��}�1���ή�n��p<�Рŗ��:CpN~�s�ν�˚�3��%
��)���goPK`

最佳答案

很简单:JAR 文件不是可执行文件。您只能通过告诉您的 shell ./command调用二进制文件/脚本。

它们是包含已编译 Java 类的存档

因此您可以像这样使用它们:

java -jar somejar.jar

这会启动一个 Java 虚拟机,并告诉它打开给定的 JAR 文件。然后,JVM 将从可以返回到 JAR 文件中的元信息计算出要运行的“主”类 - 然后“运行”该主类。

(假设相应的 JAR 文件已构建为允许像这样运行它的原因。请参阅 here 了解有关如何启用这种运行 JAR 文件的“简单方法”的详细信息)

以防万一:使用一些脚本魔法,您实际上可以将 JAR 文件转换为“二进制文件”,参见 here例如。

关于java - 无法运行 .jar 文件/java.jar : line 1: public: command not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47307288/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com