Mac Java 个应用的启动器脚本

Mac launcher script for Java app

我需要使用可移植 JRE 启动 Jar 文件。 得益于 launch4j,它可以在 Windows 上运行,多亏了我,它可以在 Ubuntu 上运行,但不能用于 Mac ..... 我无法测试它。

应用路径树:

    地图/
          launcher.command
          垃圾桶/
              abcmap.jar
              jre/
                  垃圾桶/
                      java

觉得它像 Unix 系统,我尝试了这个(没有指定 bash):

./bin/jre/bin/java -Xms512m -Xmx1024m -jar ./bin/abcmap.jar

但是出现这个错误:

    MacBook-Pro:~ frcstnt$ /Applications/abcmap-mac/abcmap.command; 
    exit;
    /Applications/abcmap-mac/abcmap.command: line 1:
    bin/jre/bin/java: No such file or directory
    logout

所有文件都是rwx,
所有文件都是无BOM的UTF8
我尝试用 Notepad++ 将行尾更改为 Unix 和 "Old Mac",

我的网站上有档案:
http://abc-map.fr/download/
https://translate.google.fr/translate?hl=fr&sl=fr&tl=en&u=http%3A%2F%2Fabc-map.fr%2F

有人可以帮帮我吗?

编辑:我想我的问题出在启动器上,可能是编码或命令错误?

编辑: 感谢 Wim 的回答,它起作用了。这是脚本:

#!/bin/bash 
SCRIPTDIR=$(dirname [=14=]) 
cd $SCRIPTDIR 
${SCRIPTDIR}/bin/jre/bin/java -jar ${SCRIPTDIR}/bin/abcmap.jar

看来您可能甚至没有安装 Java 运行时环境。您应该尝试 运行 java -version 或至少 java -hjava --help.

如果你的输出是这样的:

java: command not found

您应该下载并安装最新的 JRE,然后重试。

但是,如果您看到 java 版本,请先尝试使用 cd 转到您的 jarfile 目录,然后使用:

java -jar -otheroptionshere jarfile.jar

希望对您有所帮助!如果您还有问题,请告诉我。

路径./bin/jre/bin/java 将相对于当前目录进行解析,而不是相对于命令文件的位置。尝试从命令所在的目录中 运行 命令会发生什么。

我想我已经找到了,感谢 Wim Deblauwe。我用这个:

#!/bin/bash
SCRIPTDIR=$(dirname [=10=])
cd $SCRIPTDIR
${SCRIPTDIR}/bin/jre/bin/java -jar ${SCRIPTDIR}/bin/abcmap.jar

找到脚本目录,进入该目录开始运行