因此,我的项目运行良好,但当我试图生成apk时,我得到了一个错误。因此,我删除了node_modules并重新安装,并开始得到这个错误。
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
> Could not find any matches for com.facebook.react:hermes-engine:+ as no versions of com.facebook.react:hermes-engine are available.
Required by:
project :app我该怎么解决呢?我的react本地版本是0.68.1
发布于 2022-11-05 11:18:09
修复和更新Android自2022年11月4日以来的构建失败- https://github.com/facebook/react-native/issues/35210
从历史上看,React提供了implementation("com.facebook.react:react-native:+").文件,其中包含了一个依赖于React库的build.gradle文件,如下所示:具体来说,这个依赖声明的+部分导致Gradle在所有声明的存储库中选择最高版本(通常称为Gradle动态版本)。直到ReactiveVersion0.70,我们才在NPM包中(在./android文件夹中)发布了一个Maven Repository。从0.71开始,我们移动了这样的文件夹并将其上传到Maven Central。使用Gradle动态版本(即+依赖项)被认为是反模式(请参阅本页中的各种警告和注释),特别是因为它可能导致类似的情况,并且通常会使用户面临较少的可复制的构建。这正是在这个场景中发生的情况,因为构建开始失败而没有对用户项目进行任何更改。在0.71中,我们清理了新的应用程序模板,删除了所有的+依赖项(参见这里),并将模板移动到使用插件,这将使我们能够防止将来发生这种情况。遗憾的是,旧版本的用户(比如0.66.0 )仍在使用+版本。这导致他们的构建查询所有存储库,以获得React本机的最高可用版本。虽然node_modules/rc0本机/android文件夹包含有效的0.66.0版本,但是Gradle遵守+版本,并从Maven Central获取0.71.0-rc0版本,因为它从语义版本控制排序中获得了更高的版本。修复中的resolutionStrategy块强制使用com.facebook.Reaction: React所有项目的本机版本都是由您正在有效使用的Reve原住民版本提供的.。
https://stackoverflow.com/questions/74294632
复制相似问题