如何将JAR文件捆绑到Mac应用程序包中

时间:2015-09-08 19:22:14

标签: java eclipse macos jar export

我环顾四周,但找不到任何有用或有用的东西。我知道Launch4j可以用.exe而不是.app文件做我想做的事情。我有可运行的JAR但不知道如何将其捆绑到.app中。我曾尝试多次(没有成功)将它从eclipse导出为.app但导出后它不会打开;没有错误信息它不会打开。所以我的问题是如何将其捆绑到Application Bundle中?

1 个答案:

答案 0 :(得分:2)

如果您使用的是Java 6或更低版本以及较旧的系统,那么您在Developer目录中拥有Apple(我认为)制作的程序。这完全符合您的要求,否则,您可以创建一个" hack"应用程序包(因为它是"我不想通过互联网搜索"方法)。

  1. 启动脚本编辑器
  2. 点击"另存为"并在" File"选择"应用"。
  3. 右键点击Bundle并选择" Show Package Contents"
  4. 导航至"内容/ MacOS"并删除文件" applet"
  5. 创建一个具有相同名称的新文件,并将以下代码粘贴到其中:

    #!/bin/bash
    SOURCE="${BASH_SOURCE[0]}"
    while [ -h "$SOURCE" ]; do
        DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
        SOURCE="$(readlink "$SOURCE")"
        [[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE"
    done
    DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
    
    cd "$DIR"
    cd ..
    
    echo "$(pwd)"
    
    for file in *
    do
        if [ -f "$file" ]
        then
            if [[ "$file" =~ .*.jar ]]
            then
                java -jar "$file"
            fi
        fi
    done
    
  6. 保存文件

  7. 现在打开终端(Spotlight - >终端) 并键入以下chmod 755 注意755后面的空格。然后将刚创建的文件拖到刚刚输入的文本末尾的终端窗口中,然后按Enter键。
  8. 最后要做的是将jar文件复制到"内容"文件夹中。
  9. 注意:您正在创建默认AppleScript小程序,然后使用您自己的可执行文件切换可执行文件,以便能够启动jar文件。要授予其执行权限,您需要执行chmod 755

    这应该是这样的: -