【问题标题】:Xcode 10 unexpected duplicate task: CopyPlistFileXcode 10 意外重复任务:CopyPlistFile
【发布时间】:2019-02-22 08:19:43
【问题描述】:

今天我将我的 Xcode 从 v.9.4.1 更新到 v.10.0。现在我尝试构建我的 tvOS 项目,我看到以下错误:意外重复任务:CopyPlistFile /Users/username/Library/Developer/Xcode/DerivedData/MyApplication/Build/Products/Debug-appletvos/MyApplication.app/ Settings.plist /Users/username/project_folder/Settings.plist(在目标“MyApplicationTarget”中)。我尝试重新安装 pod(我使用 CocoaPods 1.6.0 beta)并清理构建文件夹,但它没有帮助。如何在 Xcode 10 中解决这个问题?

【问题讨论】:

    标签: xcode cocoapods plist tvos xcode10


    【解决方案1】:

    我正在为核心数据模型 .xcdatamodeld 获取此文件,结果发现模型文件列在构建阶段的“编译源”和“复制捆绑资源”下。将其从后者中删除,并最终在 Xcode 10 中构建!

    【讨论】:

    • 你是救生员!
    【解决方案2】:

    文件 -> 工作区设置 -> 将新构建系统更改为旧版。 它对我有用。

    【讨论】:

    • 在较新版本的 Xcode 中,这正在发生变化:File > Project Settings > New Build SystemFile > Project Settings > Legacy
    【解决方案3】:

    面临同样的问题。使用以下解决它

    go to Target -> Build Phases
    

    检查您的文件是否同时出现在 Compile sourcesCopy Bundle Resources 部分,如果是,则将其从 Compile Sources 中删除

    【讨论】:

      【解决方案4】:

      在我的例子中,冲突文件没有列在 Copy Bundle Resources 中,而只列在 Compile Sources 部分中。

      我进入项目导航器,选择文件,然后在 File Inspector / Target Membership 中取消选择并再次选择应用程序目标(取消勾选并勾选应用程序目标旁边的复选框)。

      文件从“编译源”中消失并出现在“复制捆绑资源”下,我能够继续构建过程。

      【讨论】:

      • 我在我的应用程序中使用我自己的 pod 并取消勾选 -> 在构建应用程序版本时勾选了一段时间。我现在发现我的文件不在 Resources 文件夹中的问题将它放在那里永久解决了问题。也许这对某人有帮助。
      【解决方案5】:

      查看复制资源文件的目标的构建阶段,看看您的 Settings.plist 是否被多次列出。

      【讨论】:

      • 这个文件在 MyApplicationTarget/Copy Bundle Resources 中只列出一次。
      • 我假设您也尝试过退出 Xcode,删除 DerivedData 文件夹,然后重新启动 Xcode?​​span>
      • 我删除了 DerivedData 文件夹,重新启动了 Xcode 10,清理了构建文件夹,但错误仍然相同。
      【解决方案6】:

      在我的 project.pbxproj 文件中,我有以下几行:

      FIRSTSTRING /* Settings.plist in Sources */ = {isa = PBXBuildFile; fileRef = FIRSTSTRING /* Settings.plist */; };
      SECONDSTRING /* Settings.plist in Resources */ = {isa = PBXBuildFile; fileRef = SECONDSTRING /* Settings.plist */; };
      

      我可以看到 Settings.plist 在这个文件中被指定了两次,作为源和资源。

      我从我的项目中删除了 Settings.plist,并在 Build Phases -> Copy Bundle Resources 中再次添加了它。现在我看到上面提到的行丢失了,我的 project.pbxproj 文件中有这一行:

      THIRDSTRING /* Settings.plist in Resources */ = {isa = PBXBuildFile; fileRef = THIRDSTRING /* Settings.plist */; };
      

      现在我可以使用 Xcode 10.0 构建我的 tvOS 应用程序了。

      【讨论】:

        猜你喜欢
        • 2018-11-14
        • 2020-04-19
        • 2021-08-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-23
        • 2021-12-04
        相关资源
        最近更新 更多