KMM - 在项目“:shared”中找不到错误任务“embedAndSignAppleFrameworkForXcode”

Posted

技术标签:

【中文标题】KMM - 在项目“:shared”中找不到错误任务“embedAndSignAppleFrameworkForXcode”【英文标题】:KMM - Error Task 'embedAndSignAppleFrameworkForXcode' not found in project ':shared' 【发布时间】:2021-10-08 21:04:32 【问题描述】:

我创建了一个项目来演示 Kotlin Multiplatform Mobile。我在两种设备上成功构建并运行了它:androidios。之后,我在 iOS 上重新运行了该项目。它有一个错误。

> Configure project :shared
Kotlin Multiplatform Projects are an Alpha feature. See: https://kotlinlang.org/docs/reference/evolution/components-stability.html. To hide this message, add 'kotlin.mpp.stability.nowarn=true' to the Gradle properties.


FAILURE: Build failed with an exception.

* What went wrong:
Task 'embedAndSignAppleFrameworkForXcode' not found in project ':shared'.

* Try:
Run gradlew tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s
Command PhaseScriptExecution failed with a nonzero exit code

** BUILD FAILED **


The following build commands failed:
    PhaseScriptExecution Run\ Script /Volumes/Data/ProjectsKMM/DemoNetworkAPI/build/ios/iosApp.build/Debug-iphonesimulator/iosApp.build/Script-7555FFB5242A651A00829871.sh
(1 failure)

这是我在 Github Click here 上的项目。请查看并帮助我找到错误。

提前致谢。

【问题讨论】:

【参考方案1】:

您需要至少使用 Kotlin 1.5.20 才能使用 embedAndSignAppleFrameworkForXcode(更多信息请参见 https://blog.jetbrains.com/kotlin/2021/07/multiplatform-gradle-plugin-improved-for-connecting-kmm-modules/)

【讨论】:

我使用 Jetpack Compose,需要使用 Kotlin 1.5.10。 我这里有同样的问题,所以使用我写的方法,以防你想尝试johnoreilly.dev/posts/kmm-using-different-kotlin-versions 您可能已经看到,Jetpack Compose 1.0.1 现已发布,它可以与 Kotlin 1.5.21 一起使用 很遗憾,在 Kotlin 1.5.31、Android Studio 2020.3.1 Patch 3 中找不到该任务,感谢任何帮助。 @Pavel 我们遇到了同样的问题。解决它需要知道的事情很少: 1. 这个任务不会出现在gradlew tasks --all 上,它是特定于环境的——它只在安装了 XCode 的 MacOS 上可用。 2. 此任务不能从终端运行,只能从 XCode 作为 Run Script 启动。 3. 您必须正确设置您的build.gradle(.kts) - 我们试图在 ios 模拟器上运行它,但我们遇到了同样的错误,直到我们取消注释 iosSimulatorArm64 行,然后它才起作用。

以上是关于KMM - 在项目“:shared”中找不到错误任务“embedAndSignAppleFrameworkForXcode”的主要内容,如果未能解决你的问题,请参考以下文章

KMM - 如何将改造添加到 :shared 模块 (commonMain)

Android Studio:KMM 项目的“共享”模块目录一直未被标记为源根目录

在我的 SQL 语法中找不到错误 - PHP(请查看语法手册?)

querydefs 运行时错误 3265:在此集合中找不到项目

错误:在根项目“projectName”中找不到项目“app”

我的 AppCenter 失败并出现错误“在项目目录中找不到 `Podfile'”并且我的项目不使用 cocoapods