Менеджер Android SDK не открывается


227

Поэтому я установил Android SDK для Windows:

http://developer.android.com/sdk/index.html (ссылка для установки)

И столкнулся с проблемой переменной пути. Поэтому я исправил это, изменив «PATH» в переменных окружения, указав, где находится мой файл java.exe из JDK.

Но теперь, когда я открываю android sdk manager, экран, похожий на cmd, кратковременно мигает на пол секунды, а затем исчезает. Я понятия не имею, что происходит и как заставить это работать.


@ user624869: Какую версию Windows вы используете? Кроме того, о какой «переменной пути» вы упоминаете?
— Squonk

53
Попробуйте запустить SDK из командной строки, используя android.batпапку инструментов.
— Alpine


2
Должен быть подробный пост с объяснением обо всех этих типах java-пути, sdk-пути, sdk / avd manager, который не отображается, права администратора, android.bat .. какие проблемы возникают из-за динамического связывания связанных путей.
— Фредрик Гаусс

Ответы:


265

Убедитесь, что ваш java\binкаталог находится в вашей инструкции пути перед windows\system32каталогом. Менеджер SDK использует Java, и он нашел его в папке system32.

В окне CMD вы можете запустить ' where java'. Не забудьте перезапустить CMD после изменения переменной пути для проверки.


11
Можете быть более конкретными ? Я не знаю, где находится мой java \ bin, это C: \ Program Files \ Java \ jdk1.7.0_11 \ bin? Что значит "перед каталогом windows \ system32"? И какой смысл запускать "где Java" в CMD?
— Хи Фонг

37
ОК, я понял это. В моем случае это означает переход в «Компьютер» -> «Дополнительные параметры системы» -> «Переменные среды» -> «PATH» -> «Изменить»: убедитесь, что они в следующем порядке: C: \ Program Files \ Java \ jdk1.7.0_11 \ bin;% SystemRoot% \ system32; ....
— Хи Фонг

9
Должен ли я использовать JDK bin или JRE bin?
— Peterdk

5
@Peterdk JDK. Все, что волнует, предпочтет JDK. Все остальное не будет суетиться.
— AlbeyAmakiir

3
Тем не менее я не могу открыть SDK Manager путем изменения пути среды.
— Йог Гуру

181

Хорошо, у меня была та же самая проблема, и ни один из этих ответов не работал для меня (я использую Windows 8). Я попытался запустить tools/android.batи заметил, что там есть некоторые ошибки. Я исследовал дальше, и, похоже, что-то не так в коде, который находит ваш путь к Java.

Вот как это исправить:

  1. Откройте tools/android.batв вашем любимом текстовом редакторе
  2. Искать этот кусок кода:

    set java_exe=
    call lib\find_java.bat
    if not defined java_exe goto :EOF
  3. Замените это на это:

    set java_exe=D:\Program Files\Java\jdk1.7.0_07\bin\java.exe 

    где путь - это путь к вашему Java-файлу.

  4. Бегать android.bat

(в моем случае я должен был указать путь к java_exeшагу 3 без кавычек, чтобы он работал.)


7
Я также использую Windows 8 и имею ту же проблему, что и оригинальный постер. Как и в случае с teuneboon, ни одно из других решений не сработало для меня, кроме этого. Спасибо teuneboon!
— Раддфуд

3
@teuneboon спасибо за это решение. И я обнаружил, что это происходит только тогда, когда вы поместили свой Android SDK в любую папку / путь, который содержит пробелы.
— ПК.

@ПК. Это значит, что если я переименую родительскую папку Android SDK, то эта проблема решена?
— Дипак

@ Deepak да, все, что вам нужно позаботиться о том, чтобы на полном пути не было пробелов.
— ПК.

1
@ПК. Извините, но это не помогает мне, я нашел эту ссылку, и это сработало для меня stackoverflow.com/a/7567354/1250370 .
— Дипак

26

Существует много причин, по которым SDK Manager не открывается. Вместо того, чтобы пробовать каждый из них вслепую, я рекомендую запустить android.bat в командном окне, чтобы вы могли прочитать сообщение об ошибке и применить правильное исправление.


21

В последней версии Android SDK запуск «SDK Manager.exe» и / или «AVD Manager.exe» больше не открывается. Даже ссылка «Запустить автономный менеджер SDK» в Android Studio, которую ранее можно было найти в настройках Android SDK, теперь не используется.

Теперь рекомендуется выполнять ручное управление SDK и AVD в Android Studio. Но для тех, у кого нет Android Studio или для тех, кто не любит открывать Android Studio только для выполнения управления SDK, вы все равно можете управлять SDK с помощью инструментов командной строки, "tools / bin / sdkmanager.bat" и " tools / bin / avdmanager.bat " .

Эта информация доступна при запуске "tools / android.bat". Я думаю, что это верно для тех, кто в настоящее время имеет Android SDK версии 25.3.1 и выше.


Есть ли способ исправить проблему, а не просто обойти ее с помощью инструментов командной строки?
— DaveTheMinion

Хотя это и не ответ на вопрос, мне пришлось повысить это для наглядности, потому что SDK Manager.exe по каким-то причинам не существует в последних загрузках SDK. Может быть упаковать все в Android Studio. Фактически, ответ @ bmdelacruz в основном соответствует тому, что говорит Google здесь: developer.android.com/studio/intro/update.html#sdk-manager
— Хьюго М. Зулета,

Мое затмение Luna работало хорошо, я добавил несколько более поздних sdks, и оно сработало и отправило мое приложение, теперь я хочу внести некоторые изменения, оно больше не открывается, я попробовал sdkmanager целую кучу ошибок, но все еще не загружается
— becker

При запуске sdkmanager.bat слишком много ошибок!
— Алекс Джолиг

19

Та же проблема здесь. Исправлена! Я установил правильный Java-компонент, все для 64-битных, потому что моя система x64, и ничего не произошло. Поэтому я пошел C:\Users\[my name]и удалил каталог .android, который был создан при первом запуске SDK, очевидно, с некоторой неправильной конфигурацией.

Тогда это сработало. Вы можете попробовать это. Удалите эту папку или просто переместите ее на рабочий стол и запустите SDK.


16

Google удалил графический интерфейс для SDK, начиная с версии 26. Если вы используете версию 26, попробуйте понизить версию до 25. Вы все равно можете открыть SDK из Android Studio.

Источник: GUI для Android SDK manager исчез?


15

Кажется, есть несколько способов запустить SDK Manager:

  1. SDK Manager.exe в корне Android SDK.
  2. SDK Manager.exeв sdk\tools\libAndroid SDK.
  3. Window -> Android SDK Manager меню в Затмении
  4. android.batв sdk\toolsAndroid SDK.

В моем случае это выглядит как android.batсбой на линии:

for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a

Что касается того, что делает эта строка ... если я запускаю вручную: "[path_to_java]java" -jar lib\archquery.jar

Он успешно возвращает: x86_64

Но когда пакетный файл запускает ту же команду, я не знаю почему, но он выдает ошибку:

Unable to access jarfile lib\archquery.jar

Таким образом, переменная swt_pathустанавливается в пустую строку. Все разрушается оттуда.

Пакетный файл устанавливает правильное значение для переменной java_exe. Другие обычно сообщают об этом как о проблеме, но эти обходные пути не были актуальны в моем случае.

Люди рекомендовали закомментировать проблемную строку, добавив REM в начало и добавив строку для ручной установки swt_pathпеременной, что является допустимым обходным путем:

REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
set swt_path=lib\x86

НО , критическая проблема в моем случае заключается в том, что он решает загрузить файл jar из папки lib\x86или lib\x86_64. В какой-то момент возникла путаница между ошибкой файла BAT, 32-разрядным JDK и 64-разрядным Android SDK.

ТАК , обходной путь в моем случае должен был:

  1. Удалить ВСЕ версии Java
  2. Установите JDK
    • Вы можете использовать 32-битный Android SDK и установить 32-битный JDK
    • Или используйте 64-битный Android SDK и установите 64-битный JDK
    • Но «битность» JDK должна соответствовать Android SDK. Похоже, что 32-разрядная или 64-разрядная версия будет работать на 64-разрядном компьютере, поскольку ДОЛГО КАК битность JDK совпадает с битностью Android SDK.
  3. Редактировать "android.bat"

    • Если вы используете 32-битный Android SDK / JDK, используйте lib\x86:

      REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
      set swt_path=lib\x86
    • Если вы используете 64-битный Android SDK / JDK, используйте lib\x86_64:

      REM for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
      set swt_path=lib\x86_64

После этого я могу успешно запустить SDK Manager, запустив его android.batили из меню Eclipse (но все равно не запустив ни один из SDK Manager.exeфайлов напрямую).


Пожалуйста, не размещайте один и тот же ответ на несколько вопросов. Если вопросы совпадают, оставьте комментарий или отметьте их как дубликаты. Если они не совпадают, пожалуйста, адаптируйте свой ответ на заданный вопрос.
— Джордж Стокер

Мой android.bat запускает sdk manager, но sdk manager.exe нет. Ошибка в отображении android.bat не найдена. Вы можете мне помочь?
— Анкита

Вы можете установить ANDROID_SWT = lib \ x86 или lib \ x86_64 перед запуском android.bat, чтобы указать swt_path.
— Питер Квиринг,

13

Самый простой способ - запустить программу от имени администратора.

Щелкните правой кнопкой мыши SDK Manager -> Запуск от имени администратора.

Это должно решить проблему :)


2
Действительно решил проблему. Это лучшее решение. Если вы хотите установить это поведение по умолчанию, установите флажок «Выполнить эту программу от имени администратора» на вкладке «Совместимость» свойств файла.
— Корбелья

9

У меня была такая же проблема, попытался установить переменные пути и все. Менеджер SDK нуждается не в JDK, а в самом дерьме конечного пользователя Java SE. Перейдите по адресу http://www.java.com/en/download/ie_manual.jsp?locale=en и загрузите его. Как только я закончил установку, это работало как шарм


8

Попробуйте добавить путь Java (указывающий на JDK) к системным переменным среды.

Щелкните правой кнопкой мыши «Компьютер»> «Свойства»> «Дополнительные параметры системы»> «Переменные среды».

Затем в разделе Системные переменные добавьте новую переменную.

Variable   Value
JAVA_PATH  C:\Program Files\Java\jdk1.7.0

Затем отредактируйте Pathпеременную с префиксом %JAVA_PATH%\bin;.


6

Поиск файла android.bat в папке инструментов работал для меня. Забавно, что это такая рутина, чтобы заставить его бежать. По моему опыту, обычно .exe файлы работают как положено. Я не уверен, почему это не так в этом случае ... странно и раздражает!


5

У меня было что-то совершенно другое, чем другие ответы.

Я побежал tools/android.batи получил

java.lang.NullPointerException
        at java.io.File.<init>(File.java:251)
        at com.android.sdklib.internal.avd.AvdManager.parseAvdInfo(AvdManager.java:1623)
        at com.android.sdklib.internal.avd.AvdManager.buildAvdList(AvdManager.java:1584)
        at com.android.sdklib.internal.avd.AvdManager.<init>(AvdManager.java:357)
        at com.android.sdklib.internal.avd.AvdManager.getInstance(AvdManager.java:380)
        at com.android.sdklib.internal.repository.updater.UpdaterData.initSdk(UpdaterData.java:259)
        at com.android.sdklib.internal.repository.updater.UpdaterData.<init>(UpdaterData.java:127)
        at com.android.sdkuilib.internal.repository.SwtUpdaterData.<init>(SwtUpdaterData.java:61)
        at com.android.sdkuilib.internal.repository.ui.SdkUpdaterWindowImpl2.<init>(SdkUpdaterWindowImpl2.java:104)
        at com.android.sdkuilib.repository.SdkUpdaterWindow.<init>(SdkUpdaterWindow.java:88)
        at com.android.sdkmanager.Main.showSdkManagerWindow(Main.java:408)
        at com.android.sdkmanager.Main.doAction(Main.java:391)
        at com.android.sdkmanager.Main.run(Main.java:151)
        at com.android.sdkmanager.Main.main(Main.java:117)

Похоже, у меня была испорченная конфигурация AVD, поэтому я пошел и очистил свои виртуальные устройства, и все снова заработало! (Файлы C:\Users\YourUser\.android\avdдля пользователей Windows)


4

Я столкнулся с той же проблемой и, наконец, сумел ее решить. Затем я создал пошаговое руководство, содержащее универсальное исправление, чтобы помочь всем разработчикам решить эту проблему как можно скорее: http://www.dominantwire.com/2015/03/android-sdk-not-opening.html.

Все шаги вкратце:

1. Если у вас есть jdk v1.8. Удалите его и переустановите jdk v1.7.xx

2. Установите пути к папкам jdk и jre bin в переменных окружения.

3. удалите (сначала сделайте резервную копию) папку .android, находящуюся в C:> Users> [user-name]> .android

4. Установите переменную JAVA_HOME, указав в качестве имени переменной JAVA_HOME, а в качестве значения переменной укажите путь к папке bin в jdk.

5. Перейдите в [sdk-каталог]> инструменты. Найдите и щелкните правой кнопкой мыши файл android.bat и выберите «изменить», чтобы открыть его в блокноте и внести следующие изменения.

ОРИГИНАЛ

set java_exe=
call lib\find_java.bat
if not defined java_exe goto :EOF

ОБНОВЛЕНО

set java_exe=C:\Program Files\Java\jdk1.7.0_75\bin\java.exe
rem call lib\find_java.bat
rem if not defined java_exe goto :EOF

ПРИМЕЧАНИЕ. Скопируйте и вставьте свой собственный путь к каталогу java.exe, как описано выше.

ОРИГИНАЛ

for /f "delims=" %%a in ('"%java_exe%" -jar lib\archquery.jar') do set swt_path=lib\%%a

ОБНОВЛЕНО

rem for /f "delims=" %%a in ('"%java_exe%" -jar lib\archquery.jar') do set swt_path=lib\%%a
set swt_path=lib\x86_64

ПРИМЕЧАНИЕ: если ваш Android SDK является 64-битным, то упомяните set swt_path = lib \ x86_64, иначе, если он 32-битный, сохраните его как set swt_path = lib \ x86

  1. Готово! Запустите Android SDK из файла Android.bat или из затмения. Это должно открыться просто отлично!

Мой android.bat запускает sdk manager, но sdk manager.exe нет. Ошибка в отображении android.bat не найдена. Вы можете мне помочь?
— Анкита

3

Я перепробовал почти все решения, представленные здесь. Но ничего не получилось. И, наконец, я загрузил инструменты (tools_r25.2.3-windows.zip) по ссылке ниже и заменил подпапку tools в папке sdk. Это начало работать.

https://developer.android.com/studio/index.html#downloads

Делиться этим как информацией, хотя это старая тема.


2
Замена toolsпапки внутри каталога SDK загруженным и извлеченным tools_r25.2.3-windows.zipтакже решила мою проблему, но целевая ссылка была обновлена ​​с помощью новейших инструментов, которые не решили эту проблему. Я скачал ZIP прямо отсюда: dl.google.com/android/repository/…
— Touhid

3

Недавно я столкнулся с этой проблемой после того, как я установил эмулятор Android с помощью менеджера SDK в Android Studio - который также обновил мои инструменты Android SDK до 26.0.1 (как это было обязательным условием - в соответствии с менеджером SDK Android Studio).

В моем случае я просто заменил toolsпапку Android SDK на toolsпапку из более старого Android SDK. Это понизило инструменты Android SDK, но теперь я могу открыть менеджер SDK с помощью SDK Manager.exe.


1
Привет, я думаю, что моя проблема началась после обновления до 26 тоже. Как вы получаете старые инструменты Android SDK?
— user77177928

Вариант 1. Если у вас есть установщик Android Studio (предпочтительно более старая версия Android Studio) в комплекте с Android SDK, вы можете установить как Android Studio, так и Android SDK - затем замените уже существующую папку инструментов SDK на недавно установленную папку инструментов SDK.
— Мунтасир

1
Вариант 2. Вы можете посетить здесь или здесь, чтобы загрузить старые инструменты Android SDK. (вы можете найти некоторые старые инструменты SDk здесь , как хорошо, но эти инструменты слишком стары)
— Мунтасир

Спасибо, это серьезная ошибка команды Android. 26 версия имеет много пропавших файлов! Понижение до предыдущих инструментов SDK работало.
— user77177928

2

Также убедитесь, что нет JRE до вашего JDK в PATH в Windows. Oracle всегда вставляет свой собственный JRE в путь раньше всего (я установил Oracle Lite после того, как установил Android SDK).


2

Та же проблема здесь, я попробовал все решения, но ничего не получалось. Затем я вошел C:\Users\User_nameи удалил папку «.android», после чего SDK Manager мог нормально открыться и автоматически создал другую папку «.android».


2

Я решил эту проблему. Если вы не можете открыть "SDK Manager.exe" из проводника или у вас возникли проблемы с SDK Manager.

Сначала проверьте, указан ли Java-путь в Переменной среды. (запустите команду Java на CMD или запустите «Где Java на CMD» в качестве администратора). Если команда Java распознана, возможно, проблема с Java отсутствует

Это может быть из-за сломанного SDK Tools. Чтобы исправить это, сначала переименуйте toolsпапку (Android\Sdk\tools)в tools.old. Теперь загрузите https://dl.google.com/android /repository/tools_r25.2.3-windows.zip?hl=id . После этого извлеките загруженные zip-файлы, Android\Sdk\следовательно, в новую toolsпапку будет извлечено все содержимое SDK. Теперь открой SDK Manager.exe. Если он откроется, ваша проблема решена. Обратите внимание, что SDK Manager.exe - это файл запуска, который запускается Android\Sdk\tools\bin\sdkmanager.bat. если вы удовлетворены ответом, пожалуйста, сообщите об этом Upvote, чтобы максимальное количество пользователей решило проблему. Для получения дополнительной помощи посетите эту страницу https://answers.unity.com/questions/1320150/unable-to-list-target-platform.html


2

Я пытался заставить менеджер SDK работать некоторое время, следуя различным потокам с похожими проблемами, которые я мог найти.

Другое решение, которое стоит рассмотреть, - переместить Android SDK в каталог без пробелов в его названии.

Например, в моем случае он состоял в:

e:\Program Files (x86)\Android\android-sdk\

и потерпит неудачу. Когда переехал в:

c:\android_sdk_sucks\

Это сработало.


В этом случае вы можете использовать кавычки, когда пробел находится в такой папке. "e: \ Program Files (x86) \ Android \ android-sdk \"
— Дипак Гоэль

1

Я пробовал все самые популярные решения раньше, и никто не работал для меня, пока я не понял, что в папке Android SDK не должно быть пробелов, поэтому я изменил ее с «C: \ Android SDK» на «C: \ Android_SDK». Так просто, как, что.


Я думаю, что это место на пути. Я использовал C: \ Programs вместо C: \ Program Files, и это работало. И это для v3.01 четыре года спустя! Я чувствую, что снова в 90-х.
— ssimm

1

Ничего не помогает мне от всех этих ответов, но я нашел правильные шаги (Windows 7 64 бит):

1) Откройте android.bat из папки sdk для редактирования;

2) Добавьте именно эти две строки :

set java_exe=c:\Program Files\Java\jdk1.8.0_25\bin\java.exe
rem call lib\find_java.bat

вместо этого :

set java_exe=
call lib\find_java.bat
if not defined java_exe goto :EOF

Где c:\Program Files\Java\jdk1.8.0_25ваша папка jdk. 3) Наслаждайтесь. SDK Manager запустится из Android студии IDE.


1

Я установил Android Studio для Mac. Мне не удалось получить доступ к менеджеру SDK через IDE. Оказывается, мне просто нужно было установить переменную окружения JAVA_HOME. Как только я получил этот набор, я смог запустить SDK-менеджер.


0

Я столкнулся с той же проблемой. При запуске android.bat я нашел решение (если Java установлена ​​в «нормальном» каталоге Windows, то есть в «программных файлах»), вам нужно заключить в кавычки символы «c: / program files /» и т. Д. И т. Д. В противном случае он не может найти Ява на "C: / программа". (мне не нравятся пробелы)


0

Проблема с моим состояла в том, что я мог запустить SDK-менеджер с помощью двойного щелчка на android.bat, но не тогда, когда я дважды щелкал по фактическому приложению SDK-менеджера. Я решил эту проблему, установив новую переменную среды:

ANDROID_HOME = C:\Development\adt-bundle-windows-x86_64-20130911\sdk\

перезагрузил мой компьютер, и теперь я могу дважды щелкнуть приложение и запустить SDK Manager. Надеюсь, это поможет :)


Я также получаю ту же проблему, но не могу решить с помощью решения, которое вы дали
— Анкита

0

Я видел ответы, которые предоставляют решения для обхода путем жесткого кодирования java.exeместоположения и x86/ x86_64строки архитектуры вsdk\tools\android.bat . Это быстрые решения, но они не решили фундаментальную проблему, которая мне действительно интересна.

Фактическая проблема, с которой я столкнулся, заключается в том, что пакетный сценарий не может найти другой файл сценария / jar-файла и поэтому не может быть продолжен. Я мог бы сказать, что сценарий был плохо написан.

После того, как я сделал следующие изменения в sdk\tools\android.bat , все работает как шарм.

В частности, я добавил %~dp0\:

set java_exe=
call %~dp0\lib\find_java.bat
if not defined java_exe goto :EOF

...

for /f "delims=" %%a in ('"%java_exe%" -jar %~dp0\lib\archquery.jar') do set swt_path=lib\%%a

Теперь попробуйте запустить скрипт, и SDK Manager должен выйти.

ps Моя установка ОС, Java 8 и Android SDK свежая, и я не делал никаких дополнительных настроек.

ps Вам все еще может потребоваться настроить переменную среды PATH, чтобы скрипт мог найти подходящую java.exe.


0

Я тестирую каждый способ, но единственный способ был переустановить SDK-менеджер по тому же пути, что и старый


0

http://quantumsupport.blogspot.com/2011/03/android-sdk-managerexe-wont-start.html

Создайте новую учетную запись пользователя, либо переустановите, либо просто запустите android.bat, и он должен работать.


1
Я просто не вижу, как это хороший вариант. У меня нет доступа на моей машине (рабочей машине) для создания новой учетной записи пользователя. Какие существуют пользовательские настройки, которые нужно удалить?
— Мэтью Бониг

0

Я столкнулся с подобной проблемой, когда менеджер SDK высветил окно командной строки и умер.

Вот что сработало для меня: мой процессор и операционная система оба 64-битные. Я установил 64-битную версию JDK. Проблема не исчезнет с переустановкой JDK или изменением пути. Моя теория заключалась в том, что SDK Manager может понадобиться 32-битная версия JDK. Не знаю, почему это должно иметь значение, но в итоге я установил 32-битную версию JDK и magic. И SDK Manager успешно запущен.


0

ОС: Windows 7- 64 бит, Android SDK: 64 бит

  1. Введите новую 'Системную переменную' с именем: JAVA_HOME со значением: C: \ Program Files \ Java \ jdk1.7.0_51

  2. Щелкните правой кнопкой мыши SDK Manager.exe -> Запуск от имени администратора.

Контрольный список:

  • Убедитесь, что путь Java в системной переменной «Путь» выглядит примерно так: C: \ Program Files \ Java \ jdk1.7.0_51 \ bin
  • В имени папки нет места, замените что-то вроде C: \ Android SDK на C: \ Android_SDK
  • Вы можете найти свой Java с помощью команды «где Java» в командной строке
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.