如何从终端执行.jar文件


123

我知道要执行文件,请使用.命令,然后使用文件名,并在文件名之间留一个空格。但是我试图使用执行.jar文件.,但它不起作用。我进入属性并将其标记为可执行文件,并使其与Java一起运行。

有没有一种方法可以在Bash Terminal中使用Java执行文件? 我正在尝试执行Minecraft.jar文件

我正在尝试执行Minecraft.jar文件。


4
您好,欢迎光临,jaorizabal。我稍微纠正了你的问题。也许您可以为浏览器安装拼写检查器,以自己解决下一个问题。另一个提示:对于文本问题,您可以在终端中用鼠标标记文本,然后在滚轮上单击鼠标中键将其粘贴到浏览器(和其他地方)的编辑字段中。然后,您可以使用编辑字段中的按钮来布局代码。这比拍摄并上传屏幕截图要快得多。
用户未知

Answers:


199

.语法只能用于运行(通过“源”)shell脚本。

您需要使用以下java命令来运行.jar文件:

java -jar Minecraft.jar

如果您没有安装Java,则可以通过安装default-jre¹软件包来解决。您可以通过在终端上运行来查看是否已经安装了Java:

java -version 

[1]:这将安装默认的openjdk Java运行时。如果愿意,可以使用openjdk-8-jre,或openjdk-7-jre,也可以改用openjdk-6-jre它-Ubuntu版本上可用的任何一种。


$ java -jar schemaSpy_5.0.0.jar *** Required parameter '-o' was not specified. ***
Karthik T 2014年

31

Linux非常有能力运行外来二进制文件,例如JAR文件。例如,这就是Wine的工作方式。要将JAR文件作为可执行文件运行,请在控制台中执行以下操作

sudo apt-get install binfmt-support

将CD转换为JAR文件并将其更改为可执行文件(您也可以通过Nautilus中的文件属性来执行此操作)

chmod a+rx myjar.jar

就像运行其他二进制可执行文件或Shell脚本一样运行您的jar文件

./myjar.jar

注意:确保已加载binfmt_misc linux内核模块。如果您使用不带此模块的自定义编译内核,则binfmt-support将不起作用。


1
谢谢!这正是我想要的。它比使用java -jar更好,因为它不需要主机程序知道它是一个Java程序,并且比使用脚本更好,因为您不必担心通过STDIN和OUT。
srlm

2
在Debian 9上不起作用:“无效的文件(错误的魔术数):Exec格式错误”
Paul

16

如果是可执行jar,则

java -jar Minecraft.jar 

并非所有的jar-Archives都包含一个可执行类,声明要在Manifest文件中启动,但是如果存在,它将起作用。

顺便说一句:多数情况下,不要从带有点的shell启动程序。点是的快捷方式source,它仅在bash和其他一些shell中起作用,以将脚本包含在当前会话的范围内。

如果已编译的二进制xybin在路径中,则仅以其名称开头:

xybin 

或者,使用其绝对路径:

/home/foo/proj/test/xybin

或其相对路径:

proj/test/xybin

或者,如果您恰好位于文件目录中,则具有以下相对路径:

./xybin

该文件必须标记为可执行文件(请参阅:chmod)。以上所有内容对于shellscript都是正确的,但它们通常具有扩展名.sh,您可以通过调用解释器来启动shellscript,然后不必将其标记为可执行文件:

 bash xy.sh

如果您不想启动新的bash,则可以使用source来使用函数定义,别名和变量设置。


7

您可能还想为Unity中的应用程序创建一个不错的条目。执行以下命令:

gedit ~/.local/share/applications/minecraft.desktop

在弹出的窗口中,复制并粘贴以下内容:

[Desktop Entry]
Type=Application
Name=Minecraft
Comment=Click here to play Minecraft
Exec=java -jar /path/to/minecraft.jar
Icon=/path/to/minecraft/icon.png
Terminal=false
Categories=Game;

您可能需要注销然后重新登录才能看到效果。:)另外,您还需要在Internet上搜索Minecraft图标,因为它们没有提供下载内容。


4
  1. CTRL+ ALT+ 打开命令提示符T
  2. 转到“ .jar”文件目录。如果您的Ubuntu版本/ flavor支持它,则应该能够右键单击“ .jar”文件的目录,然后单击“在终端中打开”
  3. 输入以下命令:

    java -jar jarfilename.jar

这样,您的“ .jar”文件将执行。


4

安装jarwrapper。之后(通过添加可执行位),您只需输入jarfile名称即可启动jar文件。

sudo apt-get install jarwrapper

这是通过binfmt向内核添加对新二进制格式的支持来实现的。



-1

如果要使用特定Java版本安装jar,请同时指定java目录

/scratch/app/product/Software/jdk1.8.0_112/bin/java -jar /path-to-jar/Minecraft.jar
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.