开发方法导出ipa报错
Getting error when exporting ipa in development method
当我 select IPA 分发方法作为开发并尝试导出时,我的所有项目都遇到了同样的错误,而且我没有在任何地方使用 python 所以为什么我得到这个错误。请帮我解决这个错误。
我正在使用 Xcode 9.2
ipatool failed with an exception:#<RuntimeError: Couldn't locate python in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/libexec /Applications/Xcode.app/Contents/Developer/usr/bin /Applications/Xcode.app/Contents/Developer/usr/local/bin /Applications/Xcode.app/Contents/Developer/Tools /usr/bin /bin /usr/sbin /sbin>
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:157:in `locate_tool'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:137:in `unicode_equal?'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `block in MakeFileSystemNode'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `each'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `detect'
好吧,似乎 Apple 使用 python 并且有些东西坏了。由于错误在您的 Xcode.app
路径中,我建议您重新安装 Xcode 以查看是否可以解决问题。
我发现了问题,感谢 Alper 指引我正确的方向,当我们创建或导出 IPA Xcode 需要 python 时位于 /usr/bin/python 路径,在我的例子中我安装了 python 但它不在那个位置,所以我在我的系统中搜索 python 可执行文件并将该可执行文件复制粘贴到这个 /usr/bin/ 位置,它工作了。
这是因为 XCode 找不到 python 二进制文件的路径。
1) 找到你的 python 二进制文件:
在您的终端中输入:
python
接下来输入:
import sys
sys.path
屏幕将显示各种 python 目录的路径。
示例:
['', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages']
将路径复制到 bin/ 文件夹并退出 python:
只需按command+d
2) 将 python 二进制文件复制到 /usr/bin 目的地:
在您的终端中输入:
cp {INSERT HERE COPIED PATH TO /bin PYTHON DIRECTORY}/python /usr/bin/
示例:
cp /Library/Frameworks/Python.framework/Versions/2.7/bin/python /usr/bin/
之后问题就会解决!
如果您遇到应用程序找不到您的 python 的问题 - 符号链接可以解决问题。
出于某种原因,我的 python 安装在 /usr/local/bin
中,而我的一个 IDE 在 /usr/bin
中搜索。
sudo ln -s /usr/local/bin/python /usr/bin/python
修复了这个问题。
享受!
当我 select IPA 分发方法作为开发并尝试导出时,我的所有项目都遇到了同样的错误,而且我没有在任何地方使用 python 所以为什么我得到这个错误。请帮我解决这个错误。
我正在使用 Xcode 9.2
ipatool failed with an exception:#<RuntimeError: Couldn't locate python in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/bin /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/libexec /Applications/Xcode.app/Contents/Developer/usr/bin /Applications/Xcode.app/Contents/Developer/usr/local/bin /Applications/Xcode.app/Contents/Developer/Tools /usr/bin /bin /usr/sbin /sbin>
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:157:in `locate_tool'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:137:in `unicode_equal?'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `block in MakeFileSystemNode'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `each'
/Applications/Xcode.app/Contents/Developer/usr/bin/ipatool:1703:in `detect'
好吧,似乎 Apple 使用 python 并且有些东西坏了。由于错误在您的 Xcode.app
路径中,我建议您重新安装 Xcode 以查看是否可以解决问题。
我发现了问题,感谢 Alper 指引我正确的方向,当我们创建或导出 IPA Xcode 需要 python 时位于 /usr/bin/python 路径,在我的例子中我安装了 python 但它不在那个位置,所以我在我的系统中搜索 python 可执行文件并将该可执行文件复制粘贴到这个 /usr/bin/ 位置,它工作了。
这是因为 XCode 找不到 python 二进制文件的路径。
1) 找到你的 python 二进制文件:
在您的终端中输入:
python
接下来输入:
import sys
sys.path
屏幕将显示各种 python 目录的路径。 示例:
['', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages']
将路径复制到 bin/ 文件夹并退出 python:
只需按command+d
2) 将 python 二进制文件复制到 /usr/bin 目的地: 在您的终端中输入:
cp {INSERT HERE COPIED PATH TO /bin PYTHON DIRECTORY}/python /usr/bin/
示例:
cp /Library/Frameworks/Python.framework/Versions/2.7/bin/python /usr/bin/
之后问题就会解决!
如果您遇到应用程序找不到您的 python 的问题 - 符号链接可以解决问题。
出于某种原因,我的 python 安装在 /usr/local/bin
中,而我的一个 IDE 在 /usr/bin
中搜索。
sudo ln -s /usr/local/bin/python /usr/bin/python
修复了这个问题。 享受!