11

我正在尝试在 Xcode 上构建我的 React Native 项目,但它失败了。构建目标是 react-native-config 错误:运行自定义 shell 脚本'[CP-User] Config codegen'“ Command PhaseScriptExecution failed with a nonzero exit code ”。

尝试使用 --verbose 运行它,我得到以下信息:

以下构建命令失败:PhaseScriptExecution [CP-User]\ Config\ codegen /User/userName/Library/Developer/Xcode/DerivedData/projectName/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/react-native-config -build/Script-21BEEA33BD6A21BF27B73D38DC1AD4.sh

我正在使用 React-Native-Config 1.4.1 运行 React Native 0.63.1,我尝试重新安装 node_modules、pod、删除 DerivedData 并清理构建,但没有运气。我也没有在 Build Phases > Run Script 下看到任何对 react-native-config 的引用。

任何想法如何解决这个问题?

4

3 回答 3

9

通常,这是由格式错误的.env文件引起的。仔细检查您的.env.

于 2020-12-13T14:50:13.133 回答
4

通常当依赖项未更新时会出现此问题。

您可以尝试以下步骤:

1-) cd ios
2-) rm -rf Podfile.lock
3-) rm -rf Pods
4-) delete .xcworkspace
5-) pod install
于 2021-04-10T17:21:40.133 回答
4

我有同样的问题,我按照一个教程来构建 ios,它在教程中已经很老了(一年)我添加了一些代码,其中包括一些东西

post_install do |installer|
installer.pods_project.targets.each do |target|
  if target.name == 'React'
  target.remove_from_project
  end
  if target.name == 'react-native-config'
    phase = target.project.new(Xcodeproj::Project::Object::PBXShellScriptBuildPhase)
    phase.shell_script = 'cd ../../'\
    '&& RNC_ROOT=./node_modules/react-native-config/'\
    '&& export SYMROOT=$RNC_ROOT/ios/ReactNativeConfig'\
    '&& export BUILD_DIR=$RNC_ROOT/ios/ReactNativeConfig'\
    '&& ruby $RNC_ROOT/ios/ReactNativeConfig/BuildDotenvConfig.ruby'
    target.build_phases << phase
    target.build_phases.move(phase,0)
  end
 end
end

请从 podfile 中删除它并按照 react-native-config 的文档在删除后在此处使用环境变量 不要忘记 pod install

在构建时照顾构建方案(您在构建时使用哪个)

于 2020-12-14T15:41:36.067 回答