KMM - 在项目':shared'中找不到任务'embedAndSignAppleFrameworkForXcode'。

7

我创建了一个演示Kotlin Multiplatform Mobile的项目,成功地在Android和iOS设备上构建和运行。之后,我在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上的项目 点击这里。请查看并帮我找出错误。
谢谢您提前的帮助。
2个回答

3

我使用Jetpack Compose,它需要使用Kotlin 1.5.10。 - PhongBM
1
我这里也有同样的问题,所以使用了我在这篇文章中写到的方法,如果你想试试的话:https://johnoreilly.dev/posts/kmm-using-different-kotlin-versions/ - John O'Reilly
1
正如您可能已经看到的那样,Jetpack Compose 1.0.1现已发布,并且与Kotlin 1.5.21兼容。 - John O'Reilly
5
很遗憾,在Kotlin 1.5.31和Android Studio 2020.3.1 Patch 3中未找到该任务。任何帮助都将不胜感激。 - Pavel
4
我们遇到了相同的问题。以下是解决这个问题需要知道的几点注意事项:
  1. 这个任务不会出现在 gradlew tasks --all 中,它是特定于环境的 - 它只能在安装有XCode的MacOS上使用。
  2. 这个任务不能从终端运行,你只能从XCode中作为"Run Script"启动它。
  3. 你必须正确地设置你的 build.gradle(.kts) - 我们尝试在ios模拟器上运行它并且得到了相同的错误,直到我们取消注释了 iosSimulatorArm64 的行,然后它才能正常工作。
- artman

0

embedAndSignPodAppleFrameworkForXcode 对我很有用

Kotlin 插件版本:212-1.7.10-release-333-AS5457.46

这是来自 Xcode/Android Studio 关于任务失败的建议

Task 'embedAndSignAppleFrameworkForXcode' not found in project ':shared'. Some candidates are: 'embedAndSignPodAppleFrameworkForXcode'.

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