xcodebuild -create-framework错误:无法读取文件

时间:2019-06-15 11:03:03

标签: swift xcodebuild

我看过“迅速的二进制框架”,并尝试使用xcodebuild -create-framework构建xcframework,但是它不能正常工作。

我启用了“构建要分发的库”,然后归档并使用了以下命令 xcodebuild -create-framework -framework /path/sample.xarchive -output sample.xcframework

但是它显示错误“无法读取/ path / sample / sample中的文件”。 我不确定我缺少什么。

系统信息:

MacOS:Catalina beta 1

Xcode 11

3 个答案:

答案 0 :(得分:1)

这是分步说明,我认为您可能缺少第2步:

1)在目标框架的构建设置中将Build Library for Distribution设置为YES

2)再次在构建设置中,将Skip Install设置为NO,否则框架将不会显示在Archive输出文件夹中。

3)选择Generic iOS Device后,从Xcode产品菜单进行存档,输出将显示在管理器中。按住Control键并单击“存档”。选择Show in Finder将其拖动到终端以获取到存档的路径并追加路径(黄色部分为拖动的路径,灰色在子文件夹中导航)。在这种情况下,我使用〜来避免显示整个路径。

  

〜/ Library / Developer / Xcode / Archives / 2019-06-22 / Output \ 6-22-19,\ 11.50 \ AM.xcarchive / Products/Library/Frameworks/MyFramework.framework

4)然后通过在上述路径的前面插入命令来创建XCFramework:

xcodebuild -create-xcframework -output Output.xcframework -framework ~/Library/Developer/Xcode/Archives/2019-06-22/Output\ 6-22-19,\ 11.50\ AM.xcarchive/Products/Library/Frameworks/MyFramework.framework 

5)然后,您应该看到输出:

xcframework successfully written out to: ~/Project/Output.xcframework

我希望有一天Xcode将增加一种无需命令行即可直接创建XCFramework的功能。

答案 1 :(得分:0)

您必须通过命令行执行两步过程。

  1. xcodebuild存档

这将存档框架并将其粘贴在项目的build目录中。

  1. xcodebuild -create-xcframework -output FrameworkName.xcframework -framework build / Release-iphoneos / ArchivedFramework.framework

这应该成功生成XCFramework。

答案 2 :(得分:0)

您输入的命令错误:

xcodebuild -create-xcframework -framework /path/sample.xarchive -output sample.xcframework