工作区中有三个非常相似的目标。目标使用相同的吊舱,就像这样
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
platform :ios, '9.0'
target "Target1" do
pod 'SwiftyJSON', '4.2.0'
...
end
target "Target2" do
pod 'SwiftyJSON', '4.2.0'
...
end
target "Target3" do
pod 'SwiftyJSON', '4.2.0'
...
end
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'OldPod'
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '4.0'
end
end
target.build_configurations.each do |config|
config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
end
end
end
目标之一没有建立,好像没有找到Pod_target_name.framework
生成的框架pod install
。错误消息显示“没有这样的模块SwiftyJSON”。
我可以通过从Build Phases-> Link Binary with Libraries中删除框架并再次添加来使其构建。项目中的某些设置错了吗?
这可能是什么原因?现在使用Xcode 10.1 / Swift 4.2,在...之前运行良好。
我也尝试添加config.build_settings['ONLY_ACTIVE_ARCH'] = "NO"
,但是没有运气。
编辑::找到了这个post,无效目标的名称包含变音符号,将其替换后就可以使用了!似乎Xcode 10无法处理特殊字符...