无法在多 iproject 工作区中加载“Lottie”的基础模块
Posted
技术标签:
【中文标题】无法在多 iproject 工作区中加载“Lottie”的基础模块【英文标题】:Cannot load underlying module for 'Lottie' in a mult-iproject workspace 【发布时间】:2021-02-19 09:40:04 【问题描述】:我正在关注clean swift的这个教程
但现在我面临着使用 cocoapods 的问题。总之,我在运行pod init
之后创建了一个工作区,然后我添加了 3 个项目:表示层、域层和数据层。
如图所示,RadarAir-15 是原始项目(运行前pod init
)。
播客文件
platform :ios, '13.6'
workspace 'RadarAIR-15'
target 'RadarAIR-15' do
xcodeproj 'RadarAIR-15.xcodeproj'
end
target 'PresentationRadarAir' do
xcodeproj 'PresentationRadarAir/PresentationRadarAir.xcodeproj'
pod 'lottie-ios'
end
在我只想为表示层添加 Pod 之前,一切似乎都很好,在这种情况下,我想使用 Lottie。 但我收到了这个错误:
<unknown>:0: error: cannot load underlying module for 'Lottie'
我也不能使用 IBDesignable。
更新
我让它在主要目标中向 pod 添加依赖项:RadarAIR-15
target 'RadarAIR-15' do
project 'RadarAIR-15'
pod 'lottie-ios'
end
target 'PresentationRadarAir' do
# use_frameworks! :linkage => :static
project 'PresentationRadarAir/PresentationRadarAir'
pod 'lottie-ios'
end
这只是一个解决方法,因为故事板(xib)仍然有相同的错误,我想避免将依赖项添加到主目标。但至少lottie 是通过代码工作的。 有没有办法摆脱这个 storyboard(xib) 错误?
【问题讨论】:
【参考方案1】:最后我不得不添加use_frameworks! :linkage => :static
,我所有的问题都消失了:)
platform :ios, '13.6'
workspace 'RadarAIR-15'
target 'RadarAIR-15' do
project 'RadarAIR-15'
end
target 'PresentationRadarAir' do
use_frameworks! :linkage => :static
project 'PresentationRadarAir/PresentationRadarAir'
pod 'lottie-ios'
pod 'Hero'
pod 'MaterialComponents'
end
target 'DataRadarAir' do
use_frameworks! :linkage => :static
project 'DataRadarAir/DataRadarAir'
pod 'Firebase/Auth'
pod 'Firebase/Firestore'
end
【讨论】:
以上是关于无法在多 iproject 工作区中加载“Lottie”的基础模块的主要内容,如果未能解决你的问题,请参考以下文章
防止在工作目录中加载 dll,InvalidCastException Type A 无法转换为 Type B
尽管ui-route和provider似乎工作正常,但我无法在angularjs中加载视图......这是一段代码
无法在 RemoteViewsFactory 中加载多个图像
无法使用表存储在 Azure 云工作者角色中加载文件或程序集 Microsoft.Data.OData 版本 = 5.2.0.0 错误