Android Studio 2.2.1 Исключение нулевой точки синхронизации Gradle

#android #android-studio #gradle #android-studio-2.2

#Android #android-studio #gradle #android-studio-2.2

Вопрос:

Я установил Android studio 2.2 и создал новый проект, но синхронизация gradle каждый раз завершалась неудачно и получала следующее исключение.

 Error:Cause: java.lang.NullPointerException
at java.util.Objects.requireNonNull(Objects.java:203)
at java.util.Arrays$ArrayList.<init>(Arrays.java:3813)
at java.util.Arrays.asList(Arrays.java:3800)
at com.intellij.openapi.util.io.FileUtilRt.doCreateTempFile(FileUtilRt.java:399)
at com.intellij.openapi.util.io.FileUtilRt.createTempFile(FileUtilRt.java:361)
at com.intellij.openapi.util.io.FileUtilRt.createTempFile(FileUtilRt.java:341)
at com.intellij.openapi.util.io.FileUtilRt.createTempFile(FileUtilRt.java:334)
at com.intellij.openapi.util.io.FileUtil.createTempFile(FileUtil.java:1479)
at com.android.tools.idea.gradle.util.GradleUtil.addInitScriptCommandLineOption(GradleUtil.java:1064)
at com.android.tools.idea.gradle.util.GradleUtil.addLocalMavenRepoInitScriptCommandLineOption(GradleUtil.java:1057)
at com.android.tools.idea.gradle.util.GradleUtil.addLocalMavenRepoInitScriptCommandLineOption(GradleUtil.java:1023)
at com.android.tools.idea.gradle.project.AndroidGradleProjectResolver.getExtraCommandLineArgs(AndroidGradleProjectResolver.java:345)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.doResolveProjectInfo(GradleProjectResolver.java:175)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.access$300(GradleProjectResolver.java:73)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.java:768)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.java:752)
at org.jetbrains.plugins.gradle.service.execution.GradleExecutionHelper.execute(GradleExecutionHelper.java:238)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:112)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:73)
at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl$1.produce(RemoteExternalSystemProjectResolverImpl.java:41)
at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl$1.produce(RemoteExternalSystemProjectResolverImpl.java:37)
at com.intellij.openapi.externalSystem.service.remote.AbstractRemoteExternalSystemService.execute(AbstractRemoteExternalSystemService.java:59)
at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl.resolveProjectInfo(RemoteExternalSystemProjectResolverImpl.java:37)
at com.intellij.openapi.externalSystem.service.remote.wrapper.ExternalSystemProjectResolverWrapper.resolveProjectInfo(ExternalSystemProjectResolverWrapper.java:49)
at com.intellij.openapi.externalSystem.service.internal.ExternalSystemResolveProjectTask.doExecute(ExternalSystemResolveProjectTask.java:51)
at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:138)
at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:124)
at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$3.execute(ExternalSystemUtil.java:419)
at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$4$2.run(ExternalSystemUtil.java:500)
at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:563)
at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:142)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:446)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:127)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$1.run(ProgressManagerImpl.java:126)
at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:369)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
  

Кто-нибудь сталкивался с такой же проблемой или нашел какое-либо решение?

Комментарии:

1. пробовал работать от имени администратора? Я знаю, это кажется очевидным

2. Спасибо, запуск от имени администратора решил проблему.

3. Каково решение, если я не являюсь пользователем admin.

Ответ №1:

Спасибо @keddy 1201, его комментарий спас мне жизнь. Я попытался удалить studio и java sdk, а затем снова переустановил пару раз с предыдущей версией, а также с новыми версиями.

Попробовал запустить studio от имени администратора, решил проблему

Комментарии:

1. Решением было бы разрешить доступ к папке temp лицам, не являющимся администраторами. Предоставление прав администратора приложению, когда оно не нуждается в них для работы, звучит как обходной путь и потенциальная угроза безопасности.

2. Мой текущий пользователь уже был администратором. Но я должен явно запустить его снова как администратор, чтобы решить проблему.

3. Пользователь — администратор = пользователь является членом группы пользователей Administrators. Если бы вы узнали, почему вам нужно запускать его от имени администратора, вам не нужно было бы запускать его от имени администратора. Поскольку ни у кого больше нет этой проблемы, возможно, вы неправильно настроили права доступа к частям вашей файловой системы, и это настоящая проблема. Предоставление прав администратора — это обходной путь. Исправление прав доступа — это реальное решение.

4. Каково решение, если я не являюсь пользователем admin.

Ответ №2:

Хотя вопрос имеет принятый ответ, но в моем случае с открытием Android Studio 2.2.1 (хотя на самом деле не только Gradle Sync) я открыл bin/idea.properties файл внутри папки android-studio установки и вставил следующую строку, как предложено в этом видео:

 disable.android.first.run=true
  

Затем перезапуск Android-Studio решил проблему NullPointerException .