使用 Jazzy 文档使用可可豆荚创建文档时出错

问题描述

我已经创建了一个新项目 [在 pod 安装之前]。我正在尝试使用 jazzy 创建文档,它创建得很好。

我在终端中使用的命令

jazzy --min-acl internal

然后我安装了 pod 文件并尝试在终端中使用相同的命令,当时我收到了类似的错误

2021-01-08 12:48:55.363 xcodebuild[1441:132556] [MT] PluginLoading: required plug-in compatibility UUID B89EAABF-783E-4EBF-80D4-A9EAC69F77F2 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/UncrustifyPlugin.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2021-01-08 12:48:55.364 xcodebuild[1441:132556] [MT] PluginLoading: required plug-in compatibility UUID B89EAABF-783E-4EBF-80D4-A9EAC69F77F2 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Crayons.xcplugin' not present in DVTPlugInCompatibilityUUIDs
Running xcodebuild
Could not successfully run `xcodebuild`.
Please check the build arguments.
Saved `xcodebuild` log file: /var/folders/5t/vxhnv5ys0fb217mwggmpsk6r0000gr/T/xcodebuild-1ECA7C52-5668-4982-A6FD-9D9CDCBAEDBC.log
Failed to generate documentation
/Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/lib/jazzy/executable.rb:36:in `execute_command': /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/bin/sourcekitten ["doc","--"] (RuntimeError)

2021-01-08 12:48:55.363 xcodebuild[1441:132556] [MT] PluginLoading: required plug-in compatibility UUID B89EAABF-783E-4EBF-80D4-A9EAC69F77F2 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/UncrustifyPlugin.xcplugin' not present in DVTPlugInCompatibilityUUIDs

2021-01-08 12:48:55.364 xcodebuild[1441:132556] [MT] PluginLoading: required plug-in compatibility UUID B89EAABF-783E-4EBF-80D4-A9EAC69F77F2 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Crayons.xcplugin' not present in DVTPlugInCompatibilityUUIDs

Running xcodebuild

Could not successfully run `xcodebuild`.

Please check the build arguments.

Saved `xcodebuild` log file: /var/folders/5t/vxhnv5ys0fb217mwggmpsk6r0000gr/T/xcodebuild-1ECA7C52-5668-4982-A6FD-9D9CDCBAEDBC.log

Failed to generate documentation
    from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/lib/jazzy/sourcekitten.rb:266:in `run_sourcekitten'
    from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/lib/jazzy/doc_builder.rb:81:in `block in build'
    from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/lib/jazzy/doc_builder.rb:79:in `chdir'
    from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/lib/jazzy/doc_builder.rb:79:in `build'
    from /Library/Ruby/Gems/2.3.0/gems/jazzy-0.13.6/bin/jazzy:15:in `<top (required)>'
    from /usr/local/bin/jazzy:22:in `load'
    from /usr/local/bin/jazzy:22:in `<main>'

解决方法

jazzy 会自动使用 Project.xcodeproj 而不是使用新创建的 Project.xcworkspace 来构建项目。这将导致 xcodebuild 在构建阶段 [CP] Check Pods Manifest.lock 失败。

您可以使用此命令查看构建日志:

cat /var/folders/5t/vxhnv5ys0fb217mwggmpsk6r0000gr/T/xcodebuild-1ECA7C52-5668-4982-A6FD-9D9CDCBAEDBC.log

jazzy 用于构建项目的 xcodebuild 命令是

/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild CODE_SIGN_IDENTITY= CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO

这将选择 Project.xcodeproj 而不是工作区文件

你应该使用这样的东西来将工作区和方案传递给 xcodebuild

jazzy --min-acl internal -x -workspace,StackExample.xcworkspace,-scheme,StackExample

参考: Issue 111