构建iOS应用程序时出现多平台错误:Command PhaseScriptExecution失败,退出码为非零

8
我正在使用Kotlin在Android Studio上开发一个多平台应用程序,当我尝试将该应用程序运行到iOS模拟器时,出现以下错误:
以下构建命令失败:
PhaseScriptExecution [CP-User]\ Build\ shared /Users/cjm/AndroidStudioProjects/GlobeMultiplatform/build/ios/Pods.build/Debug-iphonesimulator/shared.build/Script-882AF45D8B8C4938AC461F4FBA0FE197.sh(在项目“Pods”中的目标“shared”中)
在build.gradle中设置cocoa pods的代码如下:
cocoapods {
    summary = "Shared"
    homepage = "Link to the Shared Module homepage"
    ios.deploymentTarget = "13"
    frameworkName = "shared"
    podfile = project.file("../iosApp/Podfile")
}

我运行了pod install,它显示成功,但是应用程序的构建仍然失败。如何修复此错误?是什么导致了这个错误?我对Kotlin和特别是Kotlin多平台还很陌生,如果这是一个愚蠢的问题,请原谅。
编辑:运行应用程序时,Xcode显示以下内容:
构建失败: 出现异常。
- 位置: Build file '/Users/cjm/AndroidStudioProjects/GlobeMultiplatform/androidApp/build.gradle.kts' line: 1
- 出错原因: 应用插件请求[id: 'com.android.application']时发生异常。
未能应用插件'com.android.internal.application'。 Android Gradle插件需要Java 11才能运行。您当前使用的是Java 1.8。 您可以尝试以下一些选项: - 更改IDE设置。 - 更改JAVA_HOME环境变量。 - 在gradle.properties中更改org.gradle.java.home。
  • 尝试使用--stacktrace选项运行,以获取堆栈跟踪信息。使用--info或--debug选项运行以获取更多日志输出。使用--scan选项以获取完整的洞察力。

  • 获取更多帮助:https://help.gradle.org


我该怎么做? - Christopher Mathews
实际上,只有在 Xcode 中才需要使用 unfold,在 AS 中,您的 Build Output 应该包含所有信息,它应该位于 PhaseScriptExecution [CP-User]\ Build\... 行下面。 - Phil Dukhov
这是它告诉我的全部内容... 以下构建命令失败: PhaseScriptExecution [CP-User]\ Build\ shared /Users/cjm/AndroidStudioProjects/GlobeMultiplatform/build/ios/Pods.build/Debug-iphonesimulator/shared.build/Script-882AF45D8B8C4938AC461F4FBA0FE197.sh(在项目“Pods”中的目标“shared”中) (1个失败) - Christopher Mathews
我刚刚运行了我的示例应用程序,但出现了构建错误,并且我可以看到完整的输出。这可能是您的情况中的一个错误,请尝试重新启动AS。如果这没有帮助,您可以在Xcode中运行它,那里的日志肯定会可用。 - Phil Dukhov
这个链接可能会有帮助。将您的Kotlin版本更新为1.8.20 - undefined
显示剩余2条评论
1个回答

6

看起来它尝试使用Java 1.8构建您的代码,您需要Java > 11版本。

我会查看这个链接或其他指南,以确保使用正确的JDK版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接