繁体   English   中英

无法运行.jar文件/java.jar:第1行:公共:找不到命令

[英]can't run .jar file /java.jar: line 1: public: command not found

我有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文件。有关如何启用运行JAR文件的“简便方法”的详细信息,请参见此处

并且以防万一:使用一些脚本魔术,您实际上可以将JAR文件转换为“二进制”,例如,请参见此处

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM