返回

解决 Xcode 中 appledoc 的 \

IOS

Xcode 中的 Build 输入文件错误:让 appledoc 恢复运行

在升级到 Xcode 13 或更高版本后,使用 appledoc 时可能会遇到一个令人沮丧的错误:“Build input file cannot be found” 。此错误表明 Xcode 构建系统无法找到必要的输入文件 default_templates.zip,导致 appledoc 无法运行。

原因:

这个错误通常是由于以下原因引起的:

  • Xcode 无法找到 default_templates.zip 文件。
  • 该文件未被声明为生成它的脚本阶段或自定义构建规则的输出。

解决方法:

修复此错误的步骤包括:

  1. 检查文件是否存在: 确保 default_templates.zip 文件位于 ~/<ProjectDir>/appledoc/ 路径中。

  2. 声明脚本阶段输出:

    • 在 Xcode 中添加一个新的“Run Script”阶段。
    • 在“Shell”字段中添加 echo $SRCROOT 命令。
    • 在“Input Files”字段中添加 ~/<ProjectDir>/appledoc/default_templates.zip 路径。
    • 在“Output Files”字段中添加 ~/<ProjectDir>/appledoc/default_templates.zip 路径。
  3. 检查架构: 确保“appledoc”目标未排除任何架构。在“Build Settings”选项卡的“Architectures”设置下,检查是否存在被排除的架构。

  4. 重新运行命令: 关闭 Xcode 并重新运行 sudo sh install-appledoc.sh 命令。

其他提示:

  • 使用最新版本的 appledoc。
  • 清除 Xcode 的缓存(从 ~/Library/Developer/Xcode/DerivedData/ 文件夹中删除所有内容)。
  • 重新启动 Xcode。
  • 参考 appledoc 文档获取更多信息。
  • 在 Apple Developer Forums 上寻求帮助或联系 Apple 技术支持。

结论:

通过遵循这些步骤,你可以解决“Build input file cannot be found”错误,让 appledoc 再次顺利运行。记住,仔细检查文件是否存在、声明脚本阶段输出并排除其他潜在问题非常重要。

常见问题解答:

  1. 为什么会在升级 Xcode 后遇到此错误?

    升级 Xcode 可能更改了构建系统,导致以前可用的文件现在无法找到。

  2. 脚本阶段输出是什么?

    脚本阶段输出是脚本阶段生成并可以被其他阶段使用的文件。

  3. 如何找到 SRCROOT 变量?

    SRCROOT 变量是 Xcode 项目根目录的路径。

  4. 如何排除架构?

    在“Architectures”设置下,取消选中要排除的任何架构旁边的复选框。

  5. 是否有其他解决方法?

    如果以上步骤不起作用,尝试使用 appledoc 的更新版本或直接联系 appledoc 开发团队。