Android Studio 无法在 Windows 操作系统中构建反应原生项目

Posted

技术标签:

【中文标题】Android Studio 无法在 Windows 操作系统中构建反应原生项目【英文标题】:Android studio fail to build react native project in Windows Os 【发布时间】:2021-10-27 03:14:51 【问题描述】:

我有一台 Windows 机器,无法从 android studio 构建 react 本机项目。

用于创建此项目的命令

npx react-native init”来自powershell的myProject

FAILURE:构建失败并出现异常。

其中:初始化脚本 'C:\Users\ravi_\AppData\Local\Temp\sync.studio.tooling68.gradle'

出了什么问题:无法编译初始化脚本“C:\Users\ravi_\AppData\Local\Temp\sync.studio.tooling68.gradle”。

启动失败:语义分析期间的一般错误:不支持的类文件主要版本 60 java.lang.IllegalArgumentException:不支持的类文件主要版本 60 groovyjarjarasm.asm.ClassReader.(ClassReader.java:196) 在 groovyjarjarasm.asm.ClassReader.(ClassReader.java:177) 在 groovyjarjarasm.asm.ClassReader.(ClassReader.java:163) 在 groovyjarjarasm.asm.ClassReader.(ClassReader.java:284) 在 org.codehaus.groovy.ast.decompiled.AsmDecompiler.parseClass(AsmDecompiler.java:81) 在 org.codehaus.groovy.control.ClassNodeResolver.findDecompiled(ClassNodeResolver.java:251) 在 org.codehaus.groovy.control.ClassNodeResolver.tryAsLoaderClassOrScript(ClassNodeResolver.java:189) 在 org.codehaus.groovy.control.ClassNodeResolver.findClassNode(ClassNodeResolver.java:169) 在 org.codehaus.groovy.control.ClassNodeResolver.resolveName(ClassNodeResolver.java:125) 在 org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClassNullable(AsmReferenceResolver.java:57) 在 org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveClass(AsmReferenceResolver.java:44) 在 org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveNonArrayType(AsmReferenceResolver.java:79) 在 org.codehaus.groovy.ast.decompiled.AsmReferenceResolver.resolveType(AsmReferenceResolver.java:70) 在 org.codehaus.groovy.ast.decompiled.MemberSignatureParser.createMethodNode(MemberSignatureParser.java:57) 在 org.codehaus.groovy.ast.decompiled.DecompiledClassNode$2.get(DecompiledClassNode.java:234) 在 org.codehaus.groovy.ast.decompiled.DecompiledClassNode$2.get(DecompiledClassNode.java:231) 在 org.codehaus.groovy.ast.decompiled.DecompiledClassNode.createMethodNode(DecompiledClassNode.java:242) 在 org.codehaus.groovy.ast.decompiled.DecompiledClassNode.lazyInitMembers(DecompiledClassNode.java:199) 在 org.codehaus.groovy.ast.decompiled.DecompiledClassNode.getDeclaredMethods(DecompiledClassNode.java:122) 在 org.codehaus.groovy.ast.ClassNode.getMethods(ClassNode.java:912) 在 org.codehaus.groovy.ast.ClassNode.tryFindPossibleMethod(ClassNode.java:1280) 在 org.codehaus.groovy.control.StaticImportVisitor.transformMethodCallExpression(StaticImportVisitor.java:252) 在 org.codehaus.groovy.control.StaticImportVisitor.transform(StaticImportVisitor.java:113) 在 org.codehaus.groovy.ast.ClassCodeExpressionTransformer.visitExpressionStatement(ClassCodeExpressionTransformer.java:142) 在 org.codehaus.groovy.ast.stmt.ExpressionStatement.visit(ExpressionStatement.java:40) 在 org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClassCodeContainer(ClassCodeVisitorSupport.java:110) 在 org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitConstructorOrMethod(ClassCodeVisitorSupport.java:121) 在 org.codehaus.groovy.ast.ClassCodeExpressionTransformer.visitConstructorOrMethod(ClassCodeExpressionTransformer.java:53) 在 org.codehaus.groovy.control.StaticImportVisitor.visitConstructorOrMethod(StaticImportVisitor.java:89) 在 org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitConstructor(ClassCodeVisitorSupport.java:128) 在 org.codehaus.groovy.ast.ClassNode.visitContents(ClassNode.java:1099) 在 org.codehaus.groovy.ast.ClassCodeVisitorSupport.visitClass(ClassCodeVisitorSupport.java:54) 在 org.codehaus.groovy.control.StaticImportVisitor.visitClass(StaticImportVisitor.java:83) 在 org.codehaus.groovy.control.CompilationUnit$14.call(CompilationUnit.java:708) 在 org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1084) 在 org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:640) 在 org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:618) 在 org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:595) 在 groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:401) 在 groovy.lang.GroovyClassLoader.access$300(GroovyClassLoader.java:89) 在 groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:341) 在 groovy.lang.GroovyClassLoader$5.provide(GroovyClassLoader.java:338) 在 org.codehaus.groovy.runtime.memoize.ConcurrentCommonCache.getAndPut(ConcurrentCommonCache.java:147) 在 groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:336) 在 org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileScript(DefaultScriptCompilationHandler.java:139) 在 org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileToDir(DefaultScriptCompilationHandler.java:95) 在 org.gradle.groovy.scripts.internal.BuildOperationBackedScriptCompilationHandler$2.run(BuildOperationBackedScriptCompilationHandler.java:54) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:71) 在 org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:71) 在 org.gradle.groovy.scripts.internal.BuildOperationBackedScriptCompilationHandler.compileToDir(BuildOperationBackedScriptCompilationHandler.java:51) 在 org.gradle.groovy.scripts.internal.FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction.execute(FileCacheBackedScriptClassCompiler.java:190) 在 org.gradle.groovy.scripts.internal.FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction.execute(FileCacheBackedScriptClassCompiler.java:170) 在 org.gradle.groovy.scripts.internal.FileCacheBackedScriptClassCompiler$ProgressReportingInitializer.execute(FileCacheBackedScriptClassCompiler.java:211) 在 org.gradle.groovy.scripts.internal.FileCacheBackedScriptClassCompiler$ProgressReportingInitializer.execute(FileCacheBackedScriptClassCompiler.java:194) 在 org.gradle.cache.internal.DefaultPersistentDirectoryCache$Initializer.initialize(DefaultPersistentDirectoryCache.java:100) 在 org.gradle.cache.internal.FixedSharedModeCrossProcessCacheAccess$1.run(FixedSharedModeCrossProcessCacheAccess.java:86) 在 org.gradle.cache.internal.DefaultFileLockManager$DefaultFileLock.doWriteAction(DefaultFileLockManager.java:215) 在 org.gradle.cache.internal.DefaultFileLockManager$DefaultFileLock.writeFile(DefaultFileLockManager.java:205) 在 org.gradle.cache.internal.FixedSharedModeCrossProcessCacheAccess.open(FixedSharedModeCrossProcessCacheAccess.java:83) 在 org.gradle.cache.internal.DefaultCacheAccess.open(DefaultCacheAccess.java:139) 在 org.gradle.cache.internal.DefaultPersistentDirectoryStore.open(DefaultPersistentDirectoryStore.java:89) 在 org.gradle.cache.internal.DefaultPersistentDirectoryStore.open(DefaultPersistentDirectoryStore.java:43) 在 org.gradle.cache.internal.DefaultCacheFactory.doOpen(DefaultCacheFactory.java:103) 在 org.gradle.cache.internal.DefaultCacheFactory.open(DefaultCacheFactory.java:68) 在 org.gradle.cache.internal.DefaultCacheRepository$PersistentCacheBuilder.open(DefaultCacheRepository.java:126) 在 org.gradle.groovy.scripts.internal.FileCacheBackedScriptClassCompiler.compile(FileCacheBackedScriptClassCompiler.java:116) 在 org.gradle.groovy.scripts.internal.CrossBuildInMemoryCachingScriptClassCache.getOrCompile(CrossBuildInMemoryCachingScriptClassCache.java:50) 在 org.gradle.groovy.scripts.internal.BuildScopeInMemoryCachingScriptClassCompiler.compile(BuildScopeInMemoryCachingScriptClassCompiler.java:50) 在 org.gradle.groovy.scripts.DefaultScriptCompilerFactory$ScriptCompilerImpl.compile(DefaultScriptCompilerFactory.java:49) 在 org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:110) 在 org.gradle.configuration.BuildOperationScriptPlugin$1.run(BuildOperationScriptPlugin.java:65) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:71) 在 org.gradle.internal.operations.UnmanagedBuildOperationWrapper.runWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:45) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:71) 在 org.gradle.configuration.BuildOperationScriptPlugin.lambda$apply$0(BuildOperationScriptPlugin.java:62) 在 org.gradle.configuration.internal.DefaultUserCodeApplicationContext.apply(DefaultUserCodeApplicationContext.java:43) 在 org.gradle.configuration.BuildOperationScriptPlugin.apply(BuildOperationScriptPlugin.java:62) 在 org.gradle.configuration.DefaultInitScriptProcessor.process(DefaultInitScriptProcessor.java:50) 在 org.gradle.initialization.InitScriptHandler$1.run(InitScriptHandler.java:56) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75) 在 org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68) 在 org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:56) 在 org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$run$1(DefaultBuildOperationExecutor.java:71) 在 org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) 在 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) 在 org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) 在 java.base/java.lang.Thread.run(Thread.java:831)

1 个错误

在 org.gradle.groovy.scripts.internal.DefaultScriptCompilationHandler.compileScript(DefaultScriptCompilationHandler.java:139) ... 155 更多

在https://help.gradle.org 获得更多帮助

在 129 毫秒内构建失败

如果我使用 yarn android

通过 Powershell 运行,则会出现错误

1 秒内构建失败

错误 无法安装应用程序。确保你有安卓 开发环境搭建: https://reactnative.dev/docs/environment-setup。错误:命令 失败:gradlew.bat app:installDebug -PreactNativeDevServerPort=8081

FAILURE:构建失败并出现异常。

其中:设置文件 'B:\workA\react-native\splash\android\settings.gradle'

出了什么问题:无法编译设置文件 'B:\workA\react-native\splash\android\settings.gradle'。

启动失败:语义分析期间的一般错误:不支持的类文件主要版本 60

java.lang.IllegalArgumentException:不支持的类文件专业 第 60 版

【问题讨论】:

【参考方案1】:

在 Windows 操作系统上运行 react-native 的步骤

1)在android studio中打开react-native android项目

2)成功构建项目并在android studio中运行

3)打开你的项目文件夹并运行'npx react-native start'

如果你得到一个红屏,告诉你服务器没有找到,这将运行项目

1) 在清单中添加 'android:usesCleartextTraffic="true" ' 行

2)adb reverse tcp:8081 tcp:8081 在CMD或powershell中输入这个

现在再次尝试运行项目或在终端上使用“R”重新加载

我发现 android 模拟器开箱即用。对于连接的外部设备,您可以使用反向 TCP 确保设备可以找到服务器。

【讨论】:

以上是关于Android Studio 无法在 Windows 操作系统中构建反应原生项目的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio 常用快捷键 for mac

Android Studio:Unable to add window android.view.ViewRootImpl$W@5e2d85a -- permission denied for thi

Android studio的preview界面一直在加载,该如何解决?

android studio怎么解除git

无法启动 Android Studio

android studio 怎么用