Android设备监视器未打开

wa7juj8i  于 2022-09-21  发布在  Android
关注(0)|答案(5)|浏览(182)

我无法运行Android监视器。我正在使用Android Studio。不是Eclipse。

  • 当我尝试在终端中使用sudo./monitor打开它时,我看到以下警告,然后它显示

警告:发生非法反射访问操作警告:org.eclipse.osgi.internal.baseadaptor.BaseStorage(file:/Users/kidus11/Library/Android/sdk/tools/lib/monitor-x86_64/plugins/org.eclipse.osgi_3.8.2.v20130124-134944.jar)对方法java.net.URLClassLoader.addURL(java.net.URL)的非法反射访问警告:请考虑将此情况报告给org.eclipse.osgi.internal.baseadaptor.BaseStorage的维护者警告:使用--非法-Access=Warning启用进一步的警告非法反射访问操作警告:在未来版本中将拒绝所有非法访问操作

  • 我有Java版本9,也有Java 9
  • 我已经安装了最新版本的JDK或JRE

这是我每次尝试打开Android设备监视器时看到的标签
!Entry org.eclipse.osgi 4 0 2017-10-04 20:18:12.531!消息应用程序错误!堆栈1 java.lang.IlLegalStateException:无法获取应用程序服务。确保已解析并启动org.eclipse.core.time包(请参见config.ini)。At org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74)at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native方法)at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)at java.base/java.lang.reflect.Method.invoke(Method.java:564)at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)at org.eclipse.equinox.launcher.Main.run(Main.java:1438)

如有任何帮助,将不胜感激!

zyfwsgd6

zyfwsgd61#

Android Studio还不支持Java 9。安装JDK 8并更新您的工作室配置以指向8的JRE。

然后确保您还没有将JAVA_HOME设置为9。最后,确保您的eclipse没有在您的机器上的某个位置运行,从而获得了ADB的所有权。

1tu0hz3e

1tu0hz3e2#

最新的Android Studio Bundle带有自己的JRE(在<ANDROID_STUDIO>/jre下,这是推荐使用的JRE)(请查看文件/项目结构/SDK位置)。

同样,一个简单的选择是在监视器工具下创建一个符号链接,以使JRE与Android Studio保持一致,即使获得更新也是如此。

对于MAC或Linux:


# ln -s <ANDROID_STUDIO>/jre <SDK>/tools/lib/monitor-x86_64/jre

32位:


# ln -s <ANDROID_STUDIO>/jre <SDK>/tools/lib/monitor-x86/jre

然后,DDMS监视器可以两种方式工作:从Studio IDE(Tools/Android/adm)或命令行(<SDK>tools/./monitor)

rks48beu

rks48beu3#

是的,最新的Android Studio Bundle带有自己的JRE(在C:\Program Files\Android\Android Studio\jre下)。

因此,您只需复制此jre文件夹并将其粘贴到此处:C:\Users\<Username>\AppData\Local\Android\Sdk\tools\lib\monitor-x86_64

现在,在Android Studio中,进入工具->Android->Android设备监视器。

或者您可以选择此链接Resolve Android Device Monitor issue

k2fxgqgv

k2fxgqgv4#

修改监视器二进制目录中的Info.plist文件。

Path example in Mac: 
/Users/{username}/Library/Android/sdk/tools/lib/monitor.app/Contents/Info.plist

将捆绑的Java路径的vm密钥添加到<key>Eclipse</key><array>中。(有一条评论。您可以阅读它。)

-vm key example

<string>-vm</string><string>/Applications/Android 
Studio.app/Contents/jre/jdk/Contents/Home/bin/java</string>
crcmnpdw

crcmnpdw5#

不知道你的Android设备监视器的用例是什么,但很明显是从Android Studio 3.0开始的。Android设备监视器的大多数组件都已弃用:

https://developer.android.com/studio/profile/monitor.html

还有其他工具可以使用,如Android Profiler...

因此,也许真的没有必要尝试解决这个问题。

相关问题