我正在使用 Ubuntu 16.10。我已经通过终端安装了 OpenJDK Java 9 和 Eclipse。运行时android
出现此错误http://pastebin.com/ALEsETUC(太长了,无法在这里发布)并且我的 SDK 管理器刚刚冻结在“正在获取...addons_list-2.xml”处。像这样。我已删除所有文件夹并重新下载工具文件。问题仍然存在。
我在以下网址发现了有关同一问题的另一个问题Android SDK 管理器未获取软件包但没有答案。
编辑:这是错误
(Android SDK Manager:9198): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'g_type_parent (interface_type) == G_TYPE_INTERFACE' failed
(Android SDK Manager:9198): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'g_type_parent (interface_type) == G_TYPE_INTERFACE' failed
Exception in thread "Loading Sources" java.lang.ExceptionInInitializerError
at javax.crypto.JceSecurityManager.<clinit>(java.base@9-Ubuntu/JceSecurityManager.java:65)
at javax.crypto.Cipher.getConfiguredPermission(java.base@9-Ubuntu/Cipher.java:2595)
at javax.crypto.Cipher.getMaxAllowedKeyLength(java.base@9-Ubuntu/Cipher.java:2619)
at sun.security.ssl.CipherSuite$BulkCipher.isUnlimited(java.base@9-Ubuntu/CipherSuite.java:602)
at sun.security.ssl.CipherSuite$BulkCipher.<init>(java.base@9-Ubuntu/CipherSuite.java:574)
at sun.security.ssl.CipherSuite$BulkCipher.<clinit>(java.base@9-Ubuntu/CipherSuite.java:460)
at sun.security.ssl.CipherSuite.<clinit>(java.base@9-Ubuntu/CipherSuite.java:1074)
at sun.security.ssl.SSLContextImpl.getApplicableSupportedCipherSuiteList(java.base@9-Ubuntu/SSLContextImpl.java:353)
at sun.security.ssl.SSLContextImpl.access$100(java.base@9-Ubuntu/SSLContextImpl.java:41)
at sun.security.ssl.SSLContextImpl$AbstractTLSContext.<clinit>(java.base@9-Ubuntu/SSLContextImpl.java:582)
at java.lang.Class.forName0(java.base@9-Ubuntu/Native Method)
at java.lang.Class.forName(java.base@9-Ubuntu/Class.java:291)
at java.security.Provider$Service.getImplClass(java.base@9-Ubuntu/Provider.java:1844)
at java.security.Provider$Service.newInstance(java.base@9-Ubuntu/Provider.java:1820)
at sun.security.jca.GetInstance.getInstance(java.base@9-Ubuntu/GetInstance.java:236)
at sun.security.jca.GetInstance.getInstance(java.base@9-Ubuntu/GetInstance.java:164)
at javax.net.ssl.SSLContext.getInstance(java.base@9-Ubuntu/SSLContext.java:166)
at org.apache.http.conn.ssl.SSLSocketFactory.createSSLContext(SSLSocketFactory.java:202)
at org.apache.http.conn.ssl.SSLSocketFactory.createDefaultSSLContext(SSLSocketFactory.java:209)
at org.apache.http.conn.ssl.SSLSocketFactory.<init>(SSLSocketFactory.java:333)
at org.apache.http.conn.ssl.SSLSocketFactory.getSocketFactory(SSLSocketFactory.java:165)
at org.apache.http.impl.conn.SchemeRegistryFactory.createDefault(SchemeRegistryFactory.java:45)
at org.apache.http.impl.client.AbstractHttpClient.createClientConnectionManager(AbstractHttpClient.java:294)
at org.apache.http.impl.client.AbstractHttpClient.getConnectionManager(AbstractHttpClient.java:445)
at com.android.sdklib.internal.repository.UrlOpener.openWithHttpClient(UrlOpener.java:369)
at com.android.sdklib.internal.repository.UrlOpener.openUrl(UrlOpener.java:188)
at com.android.sdklib.internal.repository.DownloadCache.openUrl(DownloadCache.java:298)
at com.android.sdklib.internal.repository.DownloadCache.downloadAndCache(DownloadCache.java:681)
at com.android.sdklib.internal.repository.DownloadCache.openCachedUrl(DownloadCache.java:514)
at com.android.sdklib.internal.repository.AddonsListFetcher.fetchXmlUrl(AddonsListFetcher.java:272)
at com.android.sdklib.internal.repository.AddonsListFetcher.fetch(AddonsListFetcher.java:137)
at com.android.sdklib.internal.repository.updater.PackageLoader.loadRemoteAddonsListInTask(PackageLoader.java:465)
at com.android.sdklib.internal.repository.updater.PackageLoader.access$200(PackageLoader.java:52)
at com.android.sdklib.internal.repository.updater.PackageLoader$3.run(PackageLoader.java:435)
at com.android.sdkuilib.internal.tasks.ProgressView$2.run(ProgressView.java:140)
at com.android.sdkuilib.internal.tasks.ProgressView.startTask(ProgressView.java:162)
at com.android.sdkuilib.internal.tasks.ProgressViewFactory.start(ProgressViewFactory.java:46)
at com.android.sdklib.internal.repository.updater.PackageLoader.loadRemoteAddonsList(PackageLoader.java:432)
at com.android.sdklib.internal.repository.updater.PackageLoader$1.run(PackageLoader.java:238)
at com.android.sdkuilib.internal.tasks.ProgressView$2.run(ProgressView.java:130)
at java.lang.Thread.run(java.base@9-Ubuntu/Thread.java:843)
Caused by: java.lang.SecurityException: Can not initialize cryptographic mechanism
at javax.crypto.JceSecurity.<clinit>(java.base@9-Ubuntu/JceSecurity.java:91)
... 41 more
Caused by: java.lang.NullPointerException
at sun.nio.fs.UnixPath.normalizeAndCheck(java.base@9-Ubuntu/UnixPath.java:75)
at sun.nio.fs.UnixPath.<init>(java.base@9-Ubuntu/UnixPath.java:69)
at sun.nio.fs.UnixFileSystem.getPath(java.base@9-Ubuntu/UnixFileSystem.java:280)
at java.nio.file.Paths.get(java.base@9-Ubuntu/Paths.java:84)
at javax.crypto.JceSecurity.setupJurisdictionPolicies(java.base@9-Ubuntu/JceSecurity.java:254)
at javax.crypto.JceSecurity.access$000(java.base@9-Ubuntu/JceSecurity.java:49)
at javax.crypto.JceSecurity$1.run(java.base@9-Ubuntu/JceSecurity.java:82)
at javax.crypto.JceSecurity$1.run(java.base@9-Ubuntu/JceSecurity.java:79)
at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
at javax.crypto.JceSecurity.<clinit>(java.base@9-Ubuntu/JceSecurity.java:78)
... 41 more
编辑:使用android list sdk --all
给出与上述相同的错误
答案1
Java 9 尚未发布(原因很充分),您应该会遇到问题。我会尝试使用以下方法降级到 Java 8:
sudo apt update
sudo apt-get install default-jdk
sudo update-alternatives --config java
并选择 Java 8(应该是 openjdk-8)