我正在使用 Ubuntu Mate 16.04.3。我已经安装了一个 Java 应用程序,它可以从命令行正确启动cd "~/Downloads/Wild Card Creator 1-6-2/" && "./WildCardCreator.sh"
-- 这很好。
但是,我希望能够通过单击或两次启动此应用程序,因此我正在尝试创建一个 Mate 启动器。我通过这个过程,将上面的命令行粘贴到启动器的“命令”字段中,适当填写“名称”和“评论”字段,使用应用程序压缩包中提供的图像设置图标,确保下拉设置为“应用程序”——当我单击启动器时,我什么也得不到(如果我在主菜单中创建了它)或消息框只显示“启动应用程序时出错”。(如果我在桌面上创建它)。如果我将启动器设置为“终端中的应用程序”,我会得到完全相同的结果——没有终端打开,但我得到了同样的错误。
即使我在命令java -jar "libs/Wild Card Creator-1.6.2.jar"
之后将命令从 WildCardCreator.sh 复制到我的启动器的命令行中cd
,我也会得到同样的无信息错误——但是,如果我将它粘贴到终端中,它也可以正常工作。
看起来这应该很简单——启动器应该能够合理地运行我可以通过在终端中键入它来运行的任何命令。我究竟做错了什么?
我找到了解决方案。
首先,我更改了我正在启动的(单行)文件。我将
cd
确保 .jar 文件在其自己的文件夹中执行所需的命令添加到该文件,而不是尝试将其放在启动器的命令字段中。这给出了以下作为我启动的文件:在验证从终端启动时它仍然会运行目标程序后,我能够简化启动器,消除复合命令。但是,我发现我仍然必须手动扩展
~
,所以我最终得到了实际的启动器命令:现在只需单击即可成功启动程序(我将桌面设置为单击即可启动)。