【发布时间】:2013-06-29 18:12:06
【问题描述】:
如果我使用“用户”等 Windows 帐户,则可以从 Android Studio 启动 DDMS。
如果我使用包含“测试用户”等空格的 Windows 帐户,则 DDMS 无法启动:
日志显示如下:
!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 工具无法正常工作”而中断(它们在“用户”帐户上运行)
有人解决了这个问题吗?
【问题讨论】:
-
AFAIK,建议将 SDK 工具放在路径不包含空格的某个位置。如`C:\sdk`
-
我以前试过这个。问题不是 SDK 的位置,而是 %User Profile% 中的空间
-
这只是同一个问题的轻微变化 - 它仍然是关于包含空格的路径,仅用于数据文件而不是工具可执行文件本身。
-
你应该把丹的答案标记为正确!