Intereting Posts
FileNotFoundException в версии для Android> 2.3 Использование дат в библиотеке Graphview Понимание списка <layer-list> для Android Изменение источника данных для воспроизведения звука с использованием существующего MediaPlayer? Различия в Android между подписанными и неподписанными файлами .apk? Разница между «Build Target SDK» в Eclipse и Android: targetSdkVersion в AndroidManifest.xml? Уменьшить скорость плавного прокрутки в режиме прокрутки Android "layout_alignParentBottom" в относительной компоновке Несколько действий, идентичные onCreateOptionsMenu, onOptionsItemSelected и onKeyDown. Могу ли я каким-то образом повторно использовать код? Отправка данных из службы в действие Почему getCount в адаптере вызывается так много раз? Производительность Android / телефона (закрыта) Размеры экрана всплеска андроида для дисплеев ldpi, mdpi, hdpi, xhdpi? – например: 1024X768 пикселей для ldpi Почему maxWidth на кнопке не работает и как его обойти? Отображать предупреждение, когда интернет-соединение недоступно в приложении для Android

Android: Исключение в org.eclipse.swt.SWTError: больше не обрабатывается

Я пытаюсь настроить среду, в которой я могу разрабатывать приложения для Android на сервере Ubuntu 13.04. Поэтому я могу использовать только командную строку.

Когда я запускаю android , просто чтобы проверить, работает ли он, я получаю:

 Exception in thread "main" org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed] at org.eclipse.swt.SWT.error(Unknown Source) at org.eclipse.swt.widgets.Display.createDisplay(Unknown Source) at org.eclipse.swt.widgets.Display.create(Unknown Source) at org.eclipse.swt.graphics.Device.<init>(Unknown Source) at org.eclipse.swt.widgets.Display.<init>(Unknown Source) at org.eclipse.swt.widgets.Display.<init>(Unknown Source) at org.eclipse.swt.widgets.Display.getDefault(Unknown Source) at org.eclipse.swt.widgets.Shell.<init>(Unknown Source) at org.eclipse.swt.widgets.Shell.<init>(Unknown Source) at com.android.sdkuilib.internal.repository.ui.SdkUpdaterWindowImpl2.createShell(SdkUpdaterWindowImpl2.java:168) at com.android.sdkuilib.internal.repository.ui.SdkUpdaterWindowImpl2.open(SdkUpdaterWindowImpl2.java:137) at com.android.sdkuilib.repository.SdkUpdaterWindow.open(SdkUpdaterWindow.java:111) at com.android.sdkmanager.Main.showSdkManagerWindow(Main.java:356) at com.android.sdkmanager.Main.doAction(Main.java:334) at com.android.sdkmanager.Main.run(Main.java:120) at com.android.sdkmanager.Main.main(Main.java:103) 

Что я сделал до сих пор:

  • apt-get install ant
  • Загрузили пакет «ADT» из http://developer.android.com/sdk/index.html
  • Распакуйте его в моем домашнем каталоге /home/camilstaps
  • Добавлены /home/camilstaps/adt-bundle-linux/tools в PATH среды PATH

Что я могу сделать, чтобы решить это исключение?

Solutions Collecting From Web of "Android: Исключение в org.eclipse.swt.SWTError: больше не обрабатывается"

Вы можете обновить sdk из командной строки, используя опцию -u (no UI).

 ./android update sdk -u 

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

Однако с некоторыми параметрами можно использовать android . Например, см. Здесь :

 android create project \ --target <target_ID> \ --name <your_project_name> \ --path path/to/your/project \ --activity <your_activity_name> \ --package <your_package_namespace> 

Если вы хотите запустить Android IDE (это Eclipse), вам понадобится X-сервер для его отображения. Я бы порекомендовал не пытаться разрабатывать Android-приложения на безголовом сервере, так как вам понадобится дисплей для использования среды IDE и запуска вашего приложения в эмуляторе, чтобы вы могли протестировать его, не мигая с ним на устройстве Каждый раз, когда вы что-то меняете.

Если вы хотите разработать приложение без X-дисплея, вам придется делать все вручную, что обычно будет для вас IDE, и использовать редактор, который не требует X, например vim или emacs .

Если вы используете ssh -X в поле и запускаете андроид, он должен использовать xserver на вашем компьютере. Иногда мне нужно запустить другое приложение, например Firefox, чтобы заставить X работать до того, как я запустил Android.

Это похоже на старую ошибку затмения. Это связано с JavaVM, вы можете попробовать другую виртуальную машину, если вы можете исключить, что проблема связана с средой X.