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中有一个错误。


当前回答

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

其他回答

我使用迦太基和Xcode 10。

我的解决方案是->项目->目标->一般->

从“嵌入式二进制文件”中删除添加了Carthage的框架

通常你必须在构建阶段添加一个脚本来剥离应用商店的架构。

在Xcode 10中,脚本似乎被称为always。所以它复制框架到正确的位置,你不需要将它们添加到常规选项卡。

注意:如果没有设置->在构建设置->搜索路径->框架搜索路径->设置路径为你添加的框架Carthage ....如。“$ (PROJECT_DIR) /迦太基/构建/ iOS”

这个答案已经弃用了——Xcode 12已经弃用了遗留构建系统,它将在进一步的版本中被移除

我找到了这个构建错误的解决方案,对于其他人有同样的问题与Xcode 10构建系统,遵循以下步骤来修复它:

在Xcode中,进入File->项目/工作区设置。 将构建系统更改为遗留构建系统。

它将解决新的Xcode 10的构建问题。

如果你想使用新的构建系统,那么你可以从这个apple Xcode帮助页找到故障排除帮助。

Product Name的重复也可能导致同样的问题,特别是当您在单个工作空间中创建多个扩展目标时。

确保你也检查产品模块名称根据@Lirik的答案。

选择您的方案(左上角)->编辑方案…->构建(左标签)->取消“查找隐式依赖”

在此之后,您可能需要修复目标未显式导入的任何依赖项。

在我的例子中,问题来自podcast文件。我必须将我的测试项目添加到podfile:

target 'MyApp' do
    pod 'Firebase'
    target 'MyAppTests' do
        inherit! :search_paths
        pod 'Firebase'
    end
end

之后,我需要执行:

pod update