为jar应用程序创建启动器

时间:2015-06-23 06:33:46

标签: java linux bash shell jar

我在这个简单的问题上代表了好几天。我必须在桌面上为jar应用程序创建一个启动器。 jar应用程序位于home用户(/ home / user / java)的子目录中。我想在桌面上创建一个启动器。

问题是我的jar应用程序运行控制台应用程序。现在,当我从它的位置运行jar应用程序时一切都很好但是当我在桌面上运行启动器图标时,jar应用程序运行但不运行控制台应用程序。

我已经将启动器创建为"应用程序"作为"应用程序控制台&#34 ;;我已经在"命令行"整个路径(java -jar /home/user/java/program.jar);最后我试图创建一个不直接连接在jar应用程序上的启动器,而是一个脚本shell,它包含运行程序的命令(java -jar /home/user/java/program.jar),但从不。奇怪的是,脚本shell如果单独启动,效果不错,但是当它从启动器图标启动时没有。

这是我的启动器的代码:

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=gnome-panel-launcher
Name[en_US]=Testpad
Exec=java -jar /home/usertest/java/testpad.jar
Name=Testpad
Icon=gnome-panel-launcher

我还尝试将Exec=/home/usertest/java/script.sh放在剧本中的位置:

#!/bin/bash

java -jar /home/usertest/java/testpad.jar

我哪里错了?谢谢。

编辑1

我疯了!为什么我在控制台中运行脚本它运行良好,如果我运行相同的脚本,双击java应用程序运行但不能运行p = Runtime.getRuntime().exec("testpad -i -c"+can+" -n"+pad+" "+pathFile);

3 个答案:

答案 0 :(得分:1)

您应该将行Terminal=false编辑为Terminal=true,然后尝试。

如果不起作用,请编辑它以打开终端并运行命令。像这样, yourTerminal -e 命令 等,

xterm -e "java -jar /home/usertest/java/testpad.jar"

gnome-terminal -e "java -jar /home/usertest/java/testpad.jar"

konsole -e "java -jar /home/usertest/java/testpad.jar"

xfce4-terminal -e "java -jar /home/usertest/java/testpad.jar"

答案 1 :(得分:0)

如果要添加到控制台的框架或面板, 我认为这可以帮到你:how to visualize console java in JFrame/JPanel

答案 2 :(得分:0)

确保java在您的系统路径中。

如果你在.bashrc文件中添加了java到PATH变量,那么它只能用于终端会话。

如果可能,请在/ usr / bin / java

中设置update-alternatives链接