相关疑难解决方法(0)

将watchkit扩展添加到项目后,之前添加的第三方框架不再有效

我有一个目前正在运行的应用程序,一切都很好.

当我转到File-> New-> Target并添加一个watchkit app/extension时,构建会立即被破坏,因为"找不到模块'Crashlytics'".目前,使用Crashlytics访问@import Crashlytics,我检查了项目,并且pbxproj文件具有引用正确位置的crashlytics框架,并且在项目中可以看到Crashlytics.h.我尝试切换到#import "Crashlytics.h"只是为了看看它是否与模块有关而不是简单地导入标题,但随后Crashlytics.h file not found.

Crashlytics已经在这个项目中工作了很长时间,工作得很好.在使用外部框架或pod时添加watch扩展时是否还需要一些额外的东西?

(如果我完全评论这一行,只是为了看看会发生什么,我得到了一个类似的问题,我们正在使用的一个cocoapods,如果我继续评论的话,我会愿意的,我最终会必须删除任何外部框架)

ios watchkit

9
推荐指数
2
解决办法
5828
查看次数

没有这样的模块"扶手椅"

这个问题让我疯了.无论我做什么,我都会在存档时遇到问题"没有这样的模块'扶手椅'".它在我构建时有效,但是当我将XCode与我混淆时.我看到XCode归档/编译扶手椅.

  • 我加入$(PROJECT_DIR)/AppName/External/Armchair/build/Release-iphoneosFramework Search Paths.
  • 我在嵌入式二进制文件中添加了框架
  • 我在Linked Frameworks和Libraries中添加了框架
  • 我也试过添加框架来复制我的框架 Build Phases
  • 我试过将Armchair框架添加到我的工作区,而只是从那里添加和处理框架.

我想我甚至试过了一个raindance,只是为了确定.它在归档时一直拒绝工作,但适用于正常构建和在设备上运行.

我已阅读并尝试过以下相关问题:

运行XCode 7.1.有关如何解决的任何建议?

xcode compilation ios swift armchair

7
推荐指数
1
解决办法
1314
查看次数

Swift错误:无法从AST上下文获取模块'My_App'

我正在使用Swift 3,Xcode 8.1,CocoaPods 1.1.1.运行后pod update,每次我尝试使用Xcode的lldb控制台时 - 它都会输出错误.
例如,po self输出:

My App的共享Swift状态已经发生致命错误并被丢弃.
REPL定义和持久性名称/类型将丢失.
警告:模块My App中的 Swift错误.
调试器中将无法使用此模块的调试信息.

错误:在自动导入中:
无法从AST上下文获取模块" My_App ":

有谁知道如何解决这一问题?

xcode lldb cocoapods swift swift3

7
推荐指数
1
解决办法
3714
查看次数

每个框架内的 module.modulemap 文件中的 export * 是什么?

我创建了一个名为 的框架Communication,框架容器内有一个module.modulemap文件。

模块.modulemap

framework module Communication {
  umbrella header "Communication.h"

  export *
  module * { export * }
}
Run Code Online (Sandbox Code Playgroud)

我可以理解该模块需要伞头将其暴露给包含应用程序/目标。

但是其他两行代码的含义是什么。

  export *
  module * { export * }
Run Code Online (Sandbox Code Playgroud)

如果有人知道这条线出口的是什么?

iphone frameworks ios swift swift4

7
推荐指数
1
解决办法
3549
查看次数

Xcode 构建报告 Swift Package Manager 包“没有这样的模块”。一次又一次的构建最终修复了它

在执行“清理构建文件夹”后尝试构建时,我收到“没有此类模块”错误。反复尝试构建最终没有错误。

重要提示:找不到的模块是使用 Swift Package Manager 的本地包,即不是从 git 下载的。我像这样指定这些依赖项:

.package(url: "file:../CoreGraphicsExtensions", from: "0.0.0")
Run Code Online (Sandbox Code Playgroud)

/UIKitExtensions/Package.swift正如我在此处列出的文件中所见:

// swift-tools-version: 5.6
// The swift-tools-version declares the minimum version of Swift required to build this package.

import PackageDescription

let package = Package(
        name: "UIKitExtensions",
        products: [
            // Products define the executables and libraries a package produces, and make them visible to other packages.
            .library(
                    name: "UIKitExtensions",
                    targets: ["UIKitExtensions"]),
        ],
        dependencies: [
            // Dependencies declare other packages that this package depends …
Run Code Online (Sandbox Code Playgroud)

xcode ios swift swift-package-manager swift-package

7
推荐指数
2
解决办法
5360
查看次数

在具有项目框架依赖项的应用程序中嵌入 XCFramework

我有一个 Xcode 工作区,其中包含一个带有 iOS 应用程序目标的项目和另一个带有 Framework 目标的项目。框架目标依赖于另一个框架,该框架以以下形式集成xcframework

  • 我的应用程序
  • 我的框架
  • 其他框架

使用常规OtherFramework.framework将需要将其链接到MyFramework然后嵌入其中,MyApp即使MyApp不需要框架本身。但是,当与 集成时xcframework,此项目将无法构建并出现No such module 'OtherFramework'错误。

项目设置:

我的框架项目

我的应用项目

OtherFramework.xcframeworkMyApp目标中删除修复了构建问题,但随后会导致library not loaded错误,因为应用程序中不存在框架。

演示项目在这里:https : //github.com/msaps/XCFramework-Link-Issue

您打算如何xcframework在应用程序中链接 an并在依赖框架中链接?

为什么?

pyckamil刚刚发布了这篇文章,详细解释了这个问题:everything wrong with XCFrameworks

事实证明,XcodeProcessXCFrameworkLibrary.framework.xcframework活动构建架构中提取正确信息的步骤进行了优化。这只会运行一次,这会导致尝试链接同一框架的其他目标出现问题。

更新

此问题已在 Xcode 12.0 中解决

xcode catalyst ios swift xcframework

6
推荐指数
1
解决办法
7388
查看次数

如何在包含Swift的iOS中创建开发框架?

我的目标是创建一个包含Swift和Objective-C的iOS框架,我可以在我的开发项目中使用它.该框架的本质是框架本身正在发展.因此,每次使用此框架构建项目时都很重要(我将使用"使用"项目的框架称为项目缺乏更好的术语),我想确保框架本身重新构建.我希望这是一个框架,因为我有一些使用应用程序,我希望使用相同的框架代码.我已经为今天的大部分时间而苦苦挣扎,并浪费了大量时间在本来应该做的事情上,至少在我的想法中,更容易.所以,我会分享我的过程.

frameworks ios swift xcode6 xcode7

5
推荐指数
1
解决办法
1万
查看次数

没有这样的模块OneSignal

我的OneSignal模块有问题。它没有给我提供这样的模块OneSignal,而是由可可豆荚安装了它并use_frameworks!放在我的豆荚文件中。我真的不知道我还需要配置什么才能使其正常工作

我在这里尝试了其他解决方案,例如:

得到错误没有使用Xcode的此类模块,但是框架在那里

在此处输入图片说明

在此处输入图片说明

荚文件

# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'

target 'Jaee2' do
  # Comment this line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Jaee2


pod 'OneSignal', '>= 2.5.2', '< 3.0'
end

target 'OneSignalNotificationServiceExtension' do
 use_frameworks!

  pod 'OneSignal', '>= 2.5.2', '< 3.0'
end
Run Code Online (Sandbox Code Playgroud)

xcode notifications swift onesignal

5
推荐指数
1
解决办法
1078
查看次数

没有这样的模块“ SDWebImage”

我安装SDWebImage使用CocoaPods

我的Podfile与在https://github.com/rs/SDWebImage中编写的一样

platform :ios, '8.0'
use_frameworks!
pod 'SDWebImage', '~>3.7'
Run Code Online (Sandbox Code Playgroud)

当我导入SDWebImage时说

没有这样的模块“ SDWebImage”

我的Xcode版本是:版本7.2.1

ios sdwebimage cocoapods swift2

2
推荐指数
1
解决办法
5487
查看次数

CocoaPods pod安装.无法导入模块

我使用安装CocoaPods $ sudo gem install cocoapods.

我有一个带有以下podfile的swift Xcode项目

platform :ios, '8.2'
use_frameworks!

target 'Clover' do

pod 'Alamofire', '~> 1.2'
pod 'SwiftyJSON', '~> 2.2'
pod 'ObjectMapper', '~> 0.12'
pod 'ImageLoader', '~> 0.3.0'
pod 'SVProgressHUD'

end

target 'CloverTests' do

end
Run Code Online (Sandbox Code Playgroud)

我运行pod安装后,似乎运行正常,没有错误消息,我有一个Pods生成的文件夹Pods.xcodeproject以及其他几个文件.

但是,在尝试编译项目时,我会发错误告诉我我的模块没有找到.错误消息No such module后跟模块名称.

然后,我尝试手动安装模块,并确认在手动安装后,每个模块的吊舱确实无法正常工作.

我搜索并尝试了几种解决方案如下:

  1. 删除并重新安装pod.
  2. 将红宝石升级至2.2.1
  3. 删除pods文件夹并重新运行$ pods install.
  4. 清理项目.

ios cocoapods swift

1
推荐指数
1
解决办法
3549
查看次数

使用Xcode 8和Swift 3.0获得"没有这样的模块'RxSwift'"

我尝试在我的项目中使用RxSwift.我的podfile如下所示,↓

在此输入图像描述

我收到了这个错误:

在此输入图像描述

这是我的Link Binary With Libraries状态:

在此输入图像描述

我试过修复它超过三个小时.但网站上的答案对我不起作用......

xcode cocoapods swift rx-swift

1
推荐指数
2
解决办法
8264
查看次数

Xcode,没有这样的模块

No such Module每次尝试build/build for testing在 iMac 上执行项目时,我都会收到,但是当我在 Macbook pro 中运行完全相同的项目(项目位于 iCloud 驱动器上)时,一切似乎都运行良好。

两台电脑都在 macOS 高山脉

两个 Xcode 都是 9.0.1

我的播客文件:

platform :ios, '10.0'

target '___' do
        use_frameworks!
        pod 'Socket.IO-Client-Swift', '~> 12.0.0'
        pod 'SkyFloatingLabelTextField'
        pod 'SwAlert'
        pod 'RealmSwift'
        pod 'ESTabBarController-swift'
end
Run Code Online (Sandbox Code Playgroud)

我试过了:

  1. 使用 pod deintegrate 分解项目
  2. 将框架添加到链接的框架和库选项卡
  3. 删除派生数据文件夹
  4. 更新所有豆荚
  5. 将项目移动到机器上的文件夹(不在 icloud 驱动器中)
  6. 删除并重新安装 Xcode
  7. 将搜索路径设置为 $(SRCROOT)

通过进一步调查,我发现派生数据文件夹丢失了我的 pod 的所有 *.framework 文件,因此我从我的 macbook pro(正常工作)复制了派生数据文件夹并将其移动到 imac,这让我感到惊讶似乎已修复No such Module错误,但出现新错误missing required modules: 'SSCZLib', 'SSCommonCrypto'

我该如何解决? PS:我正在使用该.xcworkspace文件

xcode swift

1
推荐指数
1
解决办法
6871
查看次数