2013-07-02 22 views
30

Jeśli korzystam z konta systemu Windows, takiego jak "Użytkownik", DDMS można uruchomić z Android Studio.Android DDMS (Monitor) nie uruchamia się, jeśli profil użytkownika zawiera spację w nim

Jeśli mogę używać konta systemu Windows, która zawiera spację, takich jak "użytkownik testu", to DDMS nie zostanie uruchomiony:

enter image description here

Rejestr zawiera następujące informacje:

!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) 

To nie działa dla 32- lub 64-bitowych wersji SDK i nie psuje się z powodu "narzędzi Android zainstalowanych w katalogu z spacjami w ścieżce nie działają poprawnie" (robią to na koncie "użytkownika")

Czy ktoś rozwiązał ten problem?

+1

AFAIK, rada dzieje jest umieszczenie narzędzi SDK w jakimś miejscu, gdzie droga do niego nie obejmują przestrzeni, takich jak 'C:. \ sdk \' – CatShoes

+0

próbowałem to przed, problem nie z lokalizacją SDK, ale spacja w% Profilu użytkownika% – AFD

+0

To tylko niewielka odmiana tego samego problemu - wciąż chodzi o ścieżkę, która zawiera spację, tylko dla pliku danych, a nie dla samych plików wykonywalnych narzędzi. –

Odpowiedz

78

Właśnie spotkałem się z tym problemem. Moim rozwiązaniem było utworzenie symbolicznego linku do katalogu z "Test% 20User" do "Test User".

  1. Otwórz wiersz polecenia jako administrator. (Shift + Ctrl + (wpisz lub kliknij) na ikonie będzie to zrobić)
  2. cd C: \ Users
  3. mklink/d "Test% 20User" "Test Użytkownik"
  4. Wprowadzenie monitor.bat i powinno działać .
+1

Dzięki! Uratowałem mój dzień! – mFeinstein

+0

Świetne obejście, dzięki. –

+0

Dzięki! To zadziałało dla mnie. – Herman

27

Miałem ten sam błąd.

Uruchom Android Studio z uprawnieniami administracyjnymi

on pracował dla mnie.

+2

Niestety, ale nie chcesz go uruchamiać z podwyższonymi uprawnieniami. – AFD

+1

To rozwiązanie działa dla Xamarin Studio również –

+0

To rozwiązanie sprawdziło się, rozwiązanie dowiązania symbolicznego nie rozwiązało mojego problemu. – Burke9077

7

Mam ten sam problem, Naprawiłem go z systemem Android Studio jako administrator

przeciwnym razie można go uruchomić ręcznie, gdy wymagają.

+0

To zadziałało dla mnie! Dziękuję Ci. –

0

I rozwiązać problem z podaniem "Użytkownicy" Pełna kontrola w katalogu

C:\Users\hans%20naert\\.android\monitor-workspace 

(spacja w nazwie użytkownika jest konwertowany do 20% ... => za mnie "Hansa Naert" staje się „Hans% 20naert)

screencapture of securitysettings enter image description here