桌面启动器无法启动脚本

桌面启动器无法启动脚本

我读过有关制作桌面启动器的文章这里

我已经成功地为我的小型 Python 程序制作了一些启动器。

我有一个名为 Formreturn 的程序,用于制作和标记多项选择表。它很棒,现在可从 github 免费获取。(当时我花了 600 美元购买它,但对我来说很值得。)

由于某种原因,安装最新版本后,桌面图标没有安装,我必须从 bash 启动它:

pedro@pedro-512ssd:~/Formreturn$ ./formreturn.sh

程序启动正常。

我与作者 Roland Quast 讨论过这个问题,但他没有好的解决办法。他把责任归咎于 Ubuntu 的变化。

所以我想我可以制作自己的启动器:

[Desktop Entry]  
Version=1.0   
Name=Formreturn   
Comment=Multi-choice marking programme   
Exec=/home/pedro/Formreturn/formreturn.sh  
Icon=/home/pedro/icons/formreturn.png   
Terminal=false   
Type=Application  
Categories=Utility;Application;

我也尝试过:

Terminal=true

但它没有启动!也许是因为它是一个 bash 脚本?

知道哪里出了问题吗?

如果您查看所附图片,您将看到我右键单击启动器 FR1 时看到的内容。它有一个额外的选项卡“打开方式”。

如果我右键单击其他自制启动器(用于我的 Python 程序的启动器),我看不到它,它们只有 2 个选项卡:“基本”和“权限”

也许这是某种安全功能??右键单击启动器然后转到属性

编辑:这是 formreturn.sh

#!/bin/bash  

# (I commented this out with #) FRM_HOME=.    
FRM_HOME="/home/pedro/Formreturn/"
COMMAND_PATH=`echo ${0} | sed -e "s/\(.*\)\/.*$/\1/g"`
cd ${COMMAND_PATH}

if [ -z $JAVA_HOME ]; then
    JAVA_COMMAND=`which java`
    if [ "$?" = "1" ]; then
        echo "No executable java found. Please set JAVA_HOME variable."
        exit
    fi   
else
    JAVA_COMMAND=$JAVA_HOME/bin/java
fi
if [ ! -x $JAVA_COMMAND ]; then
    echo "$JAVA_COMMAND is not executable. Please check the permissions."
    exit
fi
$JAVA_COMMAND -jar -Xmx1024m $FRM_HOME/lib/formreturn.jar "$1"  

答案1

  • 您尝试运行的程序似乎是这个返回表单。如果是,你可能需要编辑formreturn.sh因此它FRM_HOME指向脚本的位置(可能/home/pedro/Formreturn——注意,尾部斜杠)。

    默认情况下,它被设置为当.从启动器调用脚本时不起作用,因为它pwd可能与脚本位置不同。

  • 尝试从头开始重新创建桌面文件。您现有的桌面文件可能存在一些小问题。例如,网页上未显示的尾随空格。

    另外,请确保.desktop文件具有正确的扩展名。否则,它可能被视为未知文件类型或普通文本文件。

相关内容