error: Multiple commands produce '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist': 1) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist' 2) Target 'OptimalLive' has copy command from '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Server/Masonry/Info.plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbofczeyhjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimalLive.app/Info.plist' 3) Target 'OptimalLive' has process command with input '/Users/uesr/Desktop/workSpace/SEALIVE/SeaLive1.1/OptimalLive/Info.plist'

在Xcode 9中运行代码正常,但在Xcode 10中有一个错误。


当前回答

我是IOS开发的新手,我尝试了上面的答案,但它们对我不起作用。

我的XCode版本是12.4,Swift 5

我得到多个命令产生错误,而构建

我试图从错误列表中扩展错误,但双击它没有做什么,所以首先,我很难知道完整的错误。

所以我右键单击错误并复制到剪贴板,粘贴在文本编辑器中。

它显示了完整的错误

上面说哪部分有问题

Multiple commands produce '/Users/userName/Library/Developer/Xcode/DerivedData/ProjectName-fbeqffupediuiedlrplqjyhgyqna/Build/Products/Production-iphoneos/XCFrameworkIntermediates/GoogleAppMeasurement':
1) That command depends on command in Target 'GoogleAppMeasurement-iOS12.3' (project 'Pods'): script phase “[CP] Copy XCFrameworks”
2) That command depends on command in Target 'GoogleAppMeasurement-iOS14.1' (project 'Pods'): script phase “[CP] Copy XCFrameworks”

(我正在使用谷歌Firebase)

我很惊讶地看到,这些pod是为两个不同版本的iOS(12.3和14.1)编译的。

我发现,在活动目标配置中,我在部署信息部分设置了iOS 12.3,在项目级别信息选项卡的部署目标中设置了14.1

将两者设置为相同的所需版本,然后清理和构建解决了这个问题。

请让我知道设置2个不同的版本是否是一个错误。如果这不是一个错误,那么应该怎么做呢?

不允许我将构建系统设置为遗留系统 信息。plist在Copy Bundle Resources阶段不存在

其他回答

在向应用程序添加了Fabric sdk套件的第二部分后,我遇到了这个问题。

实际发生的是GoogleUtilies框架被添加到Pods项目两次

这在Xcode 10之前是没问题的,但是如果一个文件有两个操作(在这种情况下是一个复制操作),Xcode 10就会报错。

去掉第二个框架是安全的。

我有一堆多个命令产生警告-不限于信息。在一个目标中复制。包括本地化资源和字符串文件,头文件等。

解决方案:删除目标成员中的所有重复项。

在检查构建日志时,我注意到一个警告:

note: Using new build system
note: Planning build
note: Constructing build description
Build system information
warning: The Copy Bundle Resources build phase contains this target's Info.plist file '/Users/<redacted>/Repositories/Whitesmith/optimize-ios/Carthage/Checkouts/WSStatusBarNotification/Miscellaneous/Info.plist'. (in target 'JDStatusBarNotification')

如果这是你的情况,那就去你的目标:

构建阶段 拷贝包资源 删除info.plist。

在我的例子中,我为两个不同的静态库使用了相同的自定义公共头文件夹路径。一个是主应用程序,另一个是手表应用程序。改变了手表应用程序的路径,现在一切正常。

我的ProjectName。Xcodeproj有一个对同名文件的有效引用和一个无效引用。项目导航器中相同的文件名,一个文件名是红色的,另一个是正常的。我摆脱了无效的引用一个(红色的),问题解决了。