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”

其他回答

如果你开发了私有cocoapod,并且已经通过Podfile添加了它,

从嵌入式二进制文件部分删除它:

有类似的问题,但与。swiftdoc文件。

我在项目中有扩展和单元测试目标。并且它们具有与应用程序相同的“产品模块名称”(Build Settings中的PRODUCT_MODULE_NAME)。在让名字独一无二之后,问题就消失了。

我有同样的问题,我有一个更多的帮助应用程序在主应用程序和复制这个资源。在我的情况下解决为:-

1)目标-> 2)构建阶段2)复制文件(n项)3)删除复制文件。

Helper应用自动复制到Xcode 10.0中。

对于没有找到正确答案的同学因为这和info。plist没有关系。

我在开发一个macOS应用程序时遇到了这个问题,没有CocoaPods或Carthage,只有SPM包,手动将xcodeprojects拖到workplace。

当我只使用一个依赖时(它从内部使用Swift-NIO),一切都没问题,但当我添加一个又一个带有重叠子deps的依赖时,我遇到了这个讨厌的问题。

解决方案是尝试分别编译所有主要的依赖项(这将失败,因为在各自的.build文件夹中不存在签出文件夹,这很可能是因为您将pkg置于编辑模式(swift包编辑YourPkg…)

您只需取消编辑pkgs,并强制所有依赖项成功编译。之后,你必须确保你的主目标内的链接二进制文件没有重叠(我不确定这是否真的有必要,但以防万一)。

之后,一切都应该工作得很好:)

当我在两个不同的目标中有相同名称的文件时,我就遇到了这个问题。出于某种原因,其中一份文件是两个目标的一部分。基本上我有两个文件。这两份文件都属于一个目标。

每个目标只能有一个文件名是有意义的,因此只要取消与主目标不相关的文件的目标成员框就可以解决这个问题。