Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
can';t run.jar文件/java.jar:未找到第1行:public:命令_Java_Linux_Jar - Fatal编程技术网

can';t run.jar文件/java.jar:未找到第1行:public:命令

can';t run.jar文件/java.jar:未找到第1行:public:命令,java,linux,jar,Java,Linux,Jar,我有Ubuntu 16.04 下载了一个带有tar.gz文件扩展名的JDK,然后安装了它 当我尝试运行.jar游戏(如Minecraft)时,它会成功运行,我下载了连接到同一JDK的netbeans,并编译了一些可以在终端中运行的程序,但当我键入: /Hello\u world.jar 即: package main; public class project { public static void main(String[] args) { System.out.pri

我有Ubuntu 16.04

下载了一个带有tar.gz文件扩展名的JDK,然后安装了它

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

/Hello\u 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`
/Hello\u world.jar:第1行:$'PK\003\004':未找到命令
./Hello_world.jar:第2行:$'\b.\020oK”:未找到命令
./Hello_world.jar:第3行:意外标记“%1”附近的语法错误
/你好_world.jar:第3行:-好的�}����META-INF/MANIFEST.MFM�1.
�0��@��uhhq���X� ��N1�Ҧ$)��7.�(�P�栈单

�A.����|��}�1.���ή�N��p简单:JAR文件不是可执行文件。您只能通过告诉shell执行
/command
来调用二进制文件/脚本

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

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

java -jar somejar.jar
这将启动一个java虚拟机,并告诉它打开给定的JAR文件。然后JVM将根据可以备份到JAR文件中的元信息计算要运行的“main”类,然后“运行”该主类

(假设相应的JAR文件已经构建在一个why中,它允许像这样运行它。有关如何启用这种运行JAR文件的“简单方式”的详细信息,请参阅)


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

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

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

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

java -jar somejar.jar
这将启动一个java虚拟机,并告诉它打开给定的JAR文件。然后JVM将根据可以备份到JAR文件中的元信息计算要运行的“main”类,然后“运行”该主类

(假设相应的JAR文件已经构建在一个why中,它允许像这样运行它。有关如何启用这种运行JAR文件的“简单方式”的详细信息,请参阅)


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

如果java在路径上,请这样尝试:java-JAR Hello\u World.JAR如果java在路径上,请这样尝试:java-JAR Hello\u World.JAR