Swift - `.framework` 文件未生成
Swift - `.framework` file is not generated
所以我只是按照这个非常简短的 tutorial 了解如何使用 Swift 创建框架。
有一次,文章的作者是这样做的:
这导致他这样做:
当我尝试做同样的事情时,没有任何反应(从未打开 Finder)。所以我想我可以手动导航到项目的文件夹以找到 .framework
文件。但看起来,这样的文件根本就不会生成:
甚至在 Spotlight 中搜索 SortedList.framework
后,也没有找到任何内容。
一个值得注意的细节是,在 Xcode 中,'Products' 显示为红色:
为什么 .framework
文件没有生成?
正在生成框架,但它位于 Xcode 的构建项目的 DerivedData
目录中,而不是框架源文件所在的目录。
您的目标路径可能不正确,这就是产品名称显示为红色且 Finder 无法打开该目录的 window 的原因。
框架的位置应为 ${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework
,(对于调试配置)将扩展为:
~/Library/Developer/Xcode/DerivedData/SortedList-<random suffix>/Build/Products/Debug-iphoneos/SortedList.framework`
更新:
如果您 select 框架产品,然后查看实用程序 -> 文件检查器窗格,您应该看到它的名称是 SortedList.framework
,类型是 Framework
,并且它的位置是 Relative to Build Products
.
下面显示的完整路径应自动对应于框架的 DerivedData 位置。
这是一个框架的“文件位置”窗格的示例。
我无法发表评论,所以我在这里写这篇文章是为了在 PetahChristian 的出色回答的基础上再接再厉。
我遇到了同样的问题,我的文件夹在 Xcode 中列为:
/Users/jack/Library/Developer/Xcode/DerivedData/PDFManipulator-ggvfnlbpcgwblwdnvsnxweqnuvgc/Build/Products/Debug-iphoneos/PDFManipulatorTests.xctest
但实际上,它存在于:
/Users/jack/Library/Developer/Xcode/DerivedData/PDFManipulator-ggvfnlbpcgwblwdnvsnxweqnuvgc/Build/Products/Debug-iphonesimulator/PDFManipulatorTests.xctest
请注意,每个最后一个文件夹都略有不同。我可以重命名现实,使其与解决问题的 Xcode 相同。
但是,如果我再次重建项目,文件将在 Debug-iphonesimulator 中重新创建。不确定如何解决。
所以我只是按照这个非常简短的 tutorial 了解如何使用 Swift 创建框架。
有一次,文章的作者是这样做的:
这导致他这样做:
当我尝试做同样的事情时,没有任何反应(从未打开 Finder)。所以我想我可以手动导航到项目的文件夹以找到 .framework
文件。但看起来,这样的文件根本就不会生成:
甚至在 Spotlight 中搜索 SortedList.framework
后,也没有找到任何内容。
一个值得注意的细节是,在 Xcode 中,'Products' 显示为红色:
为什么 .framework
文件没有生成?
正在生成框架,但它位于 Xcode 的构建项目的 DerivedData
目录中,而不是框架源文件所在的目录。
您的目标路径可能不正确,这就是产品名称显示为红色且 Finder 无法打开该目录的 window 的原因。
框架的位置应为 ${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.framework
,(对于调试配置)将扩展为:
~/Library/Developer/Xcode/DerivedData/SortedList-<random suffix>/Build/Products/Debug-iphoneos/SortedList.framework`
更新:
如果您 select 框架产品,然后查看实用程序 -> 文件检查器窗格,您应该看到它的名称是 SortedList.framework
,类型是 Framework
,并且它的位置是 Relative to Build Products
.
下面显示的完整路径应自动对应于框架的 DerivedData 位置。
这是一个框架的“文件位置”窗格的示例。
我无法发表评论,所以我在这里写这篇文章是为了在 PetahChristian 的出色回答的基础上再接再厉。
我遇到了同样的问题,我的文件夹在 Xcode 中列为:
/Users/jack/Library/Developer/Xcode/DerivedData/PDFManipulator-ggvfnlbpcgwblwdnvsnxweqnuvgc/Build/Products/Debug-iphoneos/PDFManipulatorTests.xctest
但实际上,它存在于:
/Users/jack/Library/Developer/Xcode/DerivedData/PDFManipulator-ggvfnlbpcgwblwdnvsnxweqnuvgc/Build/Products/Debug-iphonesimulator/PDFManipulatorTests.xctest
请注意,每个最后一个文件夹都略有不同。我可以重命名现实,使其与解决问题的 Xcode 相同。
但是,如果我再次重建项目,文件将在 Debug-iphonesimulator 中重新创建。不确定如何解决。