解决 Xcode 中 appledoc 的 \
2024-06-16 17:27:48
Xcode 中的 Build 输入文件错误:让 appledoc 恢复运行
在升级到 Xcode 13 或更高版本后,使用 appledoc 时可能会遇到一个令人沮丧的错误:“Build input file cannot be found” 。此错误表明 Xcode 构建系统无法找到必要的输入文件 default_templates.zip
,导致 appledoc 无法运行。
原因:
这个错误通常是由于以下原因引起的:
- Xcode 无法找到
default_templates.zip
文件。 - 该文件未被声明为生成它的脚本阶段或自定义构建规则的输出。
解决方法:
修复此错误的步骤包括:
-
检查文件是否存在: 确保
default_templates.zip
文件位于~/<ProjectDir>/appledoc/
路径中。 -
声明脚本阶段输出:
- 在 Xcode 中添加一个新的“Run Script”阶段。
- 在“Shell”字段中添加
echo $SRCROOT
命令。 - 在“Input Files”字段中添加
~/<ProjectDir>/appledoc/default_templates.zip
路径。 - 在“Output Files”字段中添加
~/<ProjectDir>/appledoc/default_templates.zip
路径。
-
检查架构: 确保“appledoc”目标未排除任何架构。在“Build Settings”选项卡的“Architectures”设置下,检查是否存在被排除的架构。
-
重新运行命令: 关闭 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 再次顺利运行。记住,仔细检查文件是否存在、声明脚本阶段输出并排除其他潜在问题非常重要。
常见问题解答:
-
为什么会在升级 Xcode 后遇到此错误?
升级 Xcode 可能更改了构建系统,导致以前可用的文件现在无法找到。
-
脚本阶段输出是什么?
脚本阶段输出是脚本阶段生成并可以被其他阶段使用的文件。
-
如何找到 SRCROOT 变量?
SRCROOT 变量是 Xcode 项目根目录的路径。
-
如何排除架构?
在“Architectures”设置下,取消选中要排除的任何架构旁边的复选框。
-
是否有其他解决方法?
如果以上步骤不起作用,尝试使用 appledoc 的更新版本或直接联系 appledoc 开发团队。