macos – 在Platypus中包含Python Script Dependencies(virtualenv内容)
作者:互联网
我正在尝试将python脚本转换为可以直接从Finder运行的OS X应用程序.我正在尝试Platypus,这似乎是最简单的选择.我遇到的问题是我在脚本中包含的软件包.我通过pip将它们安装到virtualenv中.想知道在Platypus包中包含这些文件的最佳/最合适的方法是什么.我知道我可以将它们复制到相同的目录并将它们包含在Platypus包中,但是我更喜欢做一些更清洁的东西,比如包括virtualenv,尽管看起来必须由应用程序的用户安装.
我也遇到了py2app,它似乎能够实现类似于Platypus的东西,但是他们的文档有点模糊.
解决方法:
我解决这个问题的方法是在过去将virtualenv目录的内容捆绑到Platypus中,然后用脚本激活捆绑的Python解释器.
这是Platypus界面的屏幕截图,向您展示我的意思:
您会注意到我已经捆绑了整个venv目录(使用virtualenv命令创建)和我的Python脚本my_app.py.
我实际上告诉Platypus运行的脚本run.sh是一个包含以下内容的shell脚本:
#!/bin/sh
"$PWD/venv/bin/python" my_app.py "$@"
所有这个脚本都使用venv目录中的python二进制文件来运行捆绑的Python脚本. “$@”是将run.sh的任何参数直接传递给my_app.py而不更改它们.
标签:finder,python,macos,applescript 来源: https://codeday.me/bug/20190818/1691301.html