如果用户配置文件中包含空格,则Android DDMS(监视器)无法启动

时间:2013-07-02 11:35:17

标签: android ddms

如果我使用诸如“用户”之类的Windows帐户,则可以从Android Studio启动DDMS。

如果我使用的Windows帐户包含“测试用户”等空间,则DDMS无法启动:

enter image description here

日志显示以下内容:

!SESSION 2013-07-02 12:30:07.031 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.7.0_25
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_IE
Command-line arguments:  -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 4 0 2013-07-02 12:30:07.730
!MESSAGE Application error
!STACK 1
java.io.IOException: The folder "C:\Users\Test%20User\.android\monitor-workspace\.metadata" is read-only.
    at org.eclipse.core.runtime.internal.adaptor.BasicLocation.lock(BasicLocation.java:206)
    at org.eclipse.core.runtime.internal.adaptor.BasicLocation.set(BasicLocation.java:164)
    at org.eclipse.core.runtime.internal.adaptor.BasicLocation.set(BasicLocation.java:137)
    at com.android.ide.eclipse.monitor.MonitorApplication.start(Unknown Source)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)

它不适用于32位或64位SDK版本,并且由于“安装在路径中包含空格的目录中的Android工具无法正常工作”(它们在“用户”帐户上执行)而不会中断

有没有人解决过这个问题?

5 个答案:

答案 0 :(得分:79)

我也遇到过这个问题。我的解决方法是创建一个符号目录链接,从“Test%20User”到“Test User”。

  1. 以管理员身份打开命令提示符。 (图标上的shift + ctrl +(输入或单击)将执行此操作)
  2. cd C:\ Users
  3. mklink / d“测试%20User”“测试用户”
  4. 启动monitor.bat,它应该可以工作。

答案 1 :(得分:27)

我遇到了同样的错误。

  

启动Android Studio   管理权限

它对我有用。

答案 2 :(得分:7)

我遇到了同样的问题,我通过以管理员身份运行android studio来修复它,

否则你可以在需要时手动运行它。

答案 3 :(得分:0)

我通过在目录

上提供“用户”完全控制来解决问题
C:\Users\hans%20naert\\.android\monitor-workspace

(用户名中的空格转换为%20 ... =>对我而言“Hans Naert”成为“hans%20naert”

screencapture of securitysettings enter image description here

答案 4 :(得分:0)

使用提供的管理权限运行命令提示符或Android Studio,然后启动Android设备监视器