我在这个简单的问题上代表了好几天。我必须在桌面上为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);
?
答案 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链接