snapcrafters / android-studio

A community-maintained package to easily install Android Studio on Linux
https://developer.android.com/studio/index.html
47 stars 16 forks source link

Snap doesn't run after installation of plugins #80

Closed alexanderadam closed 3 years ago

alexanderadam commented 3 years ago

What I did

I tried installing Android Studio 4.1.0.19 via Snap. The installation via GUI didn't work (because of the classic confinement):

Unable to install "Android Studio": snap "android-studio" requires classic confinement

I would expect that at least the required command (sudo snap install android-studio --classic) would be shown or even directly executed. However, therefore I installed Android Studio via CLI:

$ sudo snap install android-studio --classic

After that I was able to run Android Studio. The wizard popped up, it tried to install more dependencies (Java & emulator stuff) and I pressed Next a few times. The IDE started, I opened an existing project and it wanted to install plugins (Markdown plugin becaused I opened the project README and I guess a few more dependencies).

Afterwards it wanted to restart and I let it restart.

The issue

Since that moment I cannot start Android Studio any more because an error is shown (seems to be caused by a markdown plugin — it was proposed by Android Studio itself but isn't compatible anyway — what a mess!):

Start Failed: Internal error. Please refer to https://code.google.com/p/android/issues  java.lang.ExceptionInInitializerError   at com.a.c.c.b.m.b(m.java:260)   at com.a.c.c.d.a1.a(a1.java:297)   at com.a.c.c.d.a1.a(a1.java:119)   at com.a.c.c.d.aC.a(aC.java:56)   at com.intellij.idea.MainImpl.start(MainImpl.java:19)   at com.intellij.idea.StartupUtil.startApp(StartupUtil.java:303)   at com.intellij.idea.StartupUtil.prepareApp(StartupUtil.java:245)   at com.intellij.ide.plugins.MainRunner.lambda$start$0(MainRunner.java:47)   at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NullPointerException   at com.intellij.ui.scale.JBUIScale.lambda$static$0(JBUIScale.java:76)   at com.intellij.openapi.util.AtomicNotNullLazyValue$1.compute(AtomicNotNullLazyValue.java:59)   at com.intellij.openapi.util.AtomicNotNullLazyValue.getValue(AtomicNotNullLazyValue.java:37)   at com.intellij.ui.scale.JBUIScale.lambda$static$1(JBUIScale.java:155)   at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113)   at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41)   at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102)   at com.intellij.ui.scale.JBUIScale.lambda$static$2(JBUIScale.java:173)   at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113)   at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41)   at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102)   at com.intellij.ui.scale.JBUIScale.scale(JBUIScale.java:297)   at com.intellij.util.ui.JBInsets.create(JBInsets.java:41)   at com.intellij.util.ui.UIUtil.getRegularPanelInsets(UIUtil.java:1356)   at com.intellij.util.ui.UIUtil.<clinit>(UIUtil.java:455)   ... 9 more

This is what the console is showing (click to expand) ``` snap run android-studio Oct 29, 2020 5:55:07 PM java.util.prefs.FileSystemPreferences$6 run WARNING: Prefs file removed in background /home/user/.java/.userPrefs/prefs.xml 2020-10-29 17:55:07,434 [ 1713] ERROR - tellij.diagnostic.LoadingState - Should be called at least in the state LAF_INITIALIZED, the current state is: BOOTSTRAP Current violators count: 1 java.lang.Throwable at com.intellij.diagnostic.LoadingState.logStateError(LoadingState.java:56) at com.intellij.diagnostic.LoadingState.checkOccurred(LoadingState.java:52) at com.intellij.util.ui.UIUtil.(UIUtil.java:82) at com.a.c.c.b.m.b(m.java:260) at com.a.c.c.d.a1.a(a1.java:297) at com.a.c.c.d.a1.a(a1.java:119) at com.a.c.c.d.aC.a(aC.java:56) at com.intellij.idea.MainImpl.start(MainImpl.java:19) at com.intellij.idea.StartupUtil.startApp(StartupUtil.java:303) at com.intellij.idea.StartupUtil.prepareApp(StartupUtil.java:245) at com.intellij.ide.plugins.MainRunner.lambda$start$0(MainRunner.java:47) at java.lang.Thread.run(Thread.java:748) 2020-10-29 17:55:07,435 [ 1714] ERROR - tellij.diagnostic.LoadingState - Android Studio 4.1 Build #AI-201.8743.12.41.6858069 2020-10-29 17:55:07,435 [ 1714] ERROR - tellij.diagnostic.LoadingState - JDK: 1.8.0_242-release; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 2020-10-29 17:55:07,435 [ 1714] ERROR - tellij.diagnostic.LoadingState - OS: Linux 2020-10-29 17:55:07,462 [ 1741] ERROR - llij.ide.plugins.PluginManager - null java.lang.ExceptionInInitializerError at com.a.c.c.b.m.b(m.java:260) at com.a.c.c.d.a1.a(a1.java:297) at com.a.c.c.d.a1.a(a1.java:119) at com.a.c.c.d.aC.a(aC.java:56) at com.intellij.idea.MainImpl.start(MainImpl.java:19) at com.intellij.idea.StartupUtil.startApp(StartupUtil.java:303) at com.intellij.idea.StartupUtil.prepareApp(StartupUtil.java:245) at com.intellij.ide.plugins.MainRunner.lambda$start$0(MainRunner.java:47) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NullPointerException at com.intellij.ui.scale.JBUIScale.lambda$static$0(JBUIScale.java:76) at com.intellij.openapi.util.AtomicNotNullLazyValue$1.compute(AtomicNotNullLazyValue.java:59) at com.intellij.openapi.util.AtomicNotNullLazyValue.getValue(AtomicNotNullLazyValue.java:37) at com.intellij.ui.scale.JBUIScale.lambda$static$1(JBUIScale.java:155) at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113) at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41) at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102) at com.intellij.ui.scale.JBUIScale.lambda$static$2(JBUIScale.java:173) at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113) at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41) at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102) at com.intellij.ui.scale.JBUIScale.scale(JBUIScale.java:297) at com.intellij.util.ui.JBInsets.create(JBInsets.java:41) at com.intellij.util.ui.UIUtil.getRegularPanelInsets(UIUtil.java:1356) at com.intellij.util.ui.UIUtil.(UIUtil.java:455) ... 9 more 2020-10-29 17:55:07,462 [ 1741] ERROR - llij.ide.plugins.PluginManager - Android Studio 4.1 Build #AI-201.8743.12.41.6858069 2020-10-29 17:55:07,462 [ 1741] ERROR - llij.ide.plugins.PluginManager - JDK: 1.8.0_242-release; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o 2020-10-29 17:55:07,462 [ 1741] ERROR - llij.ide.plugins.PluginManager - OS: Linux Start Failed: Internal error. Please refer to https://code.google.com/p/android/issues java.lang.ExceptionInInitializerError at com.a.c.c.b.m.b(m.java:260) at com.a.c.c.d.a1.a(a1.java:297) at com.a.c.c.d.a1.a(a1.java:119) at com.a.c.c.d.aC.a(aC.java:56) at com.intellij.idea.MainImpl.start(MainImpl.java:19) at com.intellij.idea.StartupUtil.startApp(StartupUtil.java:303) at com.intellij.idea.StartupUtil.prepareApp(StartupUtil.java:245) at com.intellij.ide.plugins.MainRunner.lambda$start$0(MainRunner.java:47) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NullPointerException at com.intellij.ui.scale.JBUIScale.lambda$static$0(JBUIScale.java:76) at com.intellij.openapi.util.AtomicNotNullLazyValue$1.compute(AtomicNotNullLazyValue.java:59) at com.intellij.openapi.util.AtomicNotNullLazyValue.getValue(AtomicNotNullLazyValue.java:37) at com.intellij.ui.scale.JBUIScale.lambda$static$1(JBUIScale.java:155) at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113) at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41) at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102) at com.intellij.ui.scale.JBUIScale.lambda$static$2(JBUIScale.java:173) at com.intellij.util.LazyInitializer$MutableNotNullValue.initialize(LazyInitializer.java:113) at com.intellij.util.LazyInitializer$NullableValue.get(LazyInitializer.java:41) at com.intellij.util.LazyInitializer$MutableNotNullValue.get(LazyInitializer.java:102) at com.intellij.ui.scale.JBUIScale.scale(JBUIScale.java:297) at com.intellij.util.ui.JBInsets.create(JBInsets.java:41) at com.intellij.util.ui.UIUtil.getRegularPanelInsets(UIUtil.java:1356) at com.intellij.util.ui.UIUtil.(UIUtil.java:455) ... 9 more ----- JRE 1.8.0_242-release-1644-b3-6222593 amd64 by JetBrains s.r.o /snap/android-studio/94/android-studio/jre/jre ```

Now I thought, that I could simply reinstall the Snap (sudo snap remove android-studio && sudo snap install android-studio --classic) since everything (or at least most stuff) should be within a container.

But it turned out the error persist.

EDIT: I had to delete ~/.local/share/Google/AndroidStudio4.1/ to make it running again. Now it's asking for the path to the Android SDK though although I thought this was part of the wizard process before:

Select SDKs — Please provide the path to the Android SDK. If you do not have the Android SDK, you can obtain it from d.android.com/sdk. Select android SDK:

om26er commented 3 years ago

Yeah, that's a bug in IntelliJ (have seen with other IDEs as well). Looks like something to do with UI scaling.

alexanderadam commented 3 years ago

Thank you for responding so fast. What can I do to get to the initial state? Which directories do I have to delete?

om26er commented 3 years ago

I would delete the ~/.AndroidStudio4.1 directory and see if that helps

alexanderadam commented 3 years ago

Thank you. IMHO it created the ~/Android on the first run. I deleted it, though. Can I somehow force it to reinstall the Android SDK in the way it was intended?

Found it:

  1. File > Setting > Appearance & Behavior > System Settings > Android SDK > [Edit] Button Click (Blue Color Link Button)
  2. In Dialog [ SDK Setup ] press [Next] button & [Finish] button