Scala + Android: Кто-нибудь успешно создает и отлаживает Eclipse?

До сих пор единственным способом, который я смог отлаживать в Eclipse, является использование Treeshaker с веткой Scala IDE buggy 2.8. Если я попытаюсь построить с помощью Scala IDE без Treeshaker, я получаю ошибки ClassNotFound на этот длинный поток на scala -on-android.

В идеале я бы построил с помощью sbt-android и отлаживал в Eclipse, но я не смог сделать это успешно. Наиболее близким к отладке проекта sbt-android, который я смог достичь, было создание проекта sbt-android с помощью команды android: package-debug, запуск исполняемого файла с помощью команды android: start-emulator, а затем подключение DDMS к приложению нить.

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

Кто-нибудь смог отладить Scala код Android в Eclipse, используя любые другие инструменты помимо Treeshaker с Scala IDE на основе Scala 2.8?

UPDATE. Я успешно отлаживаю (не строю) в Eclipse после создания из командной строки с помощью sbt, sbteclipse и android-plugin.

Что я сделал, так это использовать новое меню проекта Eclipse для Android, подключиться к существующему источнику и указать его в каталог. /src/main. Затем Eclipse распознал настройки Android, и DDMS распознала задачу как принадлежащую проекту Eclipse Android.

Мне также пришлось переконфигурировать исходные папки пути создания Java проекта Eclipse, удалив папку src из пути сборки и добавив папку. / scala. Затем мне пришлось перезапустить Eclipse, чтобы добавить точки останова в файл Scala.

Вот несколько интересных обсуждений о трудностях создания и отладки приложений Android с помощью Eclipse.

Ответ 1

В целом отладка Scala кода, работающего на Android с использованием Eclipse, хорошо работает и ведет себя более или менее как отладка Scala на обычных (не Android) приложениях.

Я использую sbt с sbt-android и android: start-emulator или android: start-device.

В зависимости от того, нужно ли отлаживать запуск приложения, я устанавливаю параметр для ожидания отладки в настройках разработчика на устройстве или эмуляторе. Для этого запустите "DevTools" / "Настройки разработки". Выберите приложение и установите флажок "Подождите, пока отладчик".

Затем вам нужно выбрать процесс для отладки в DDMS. Убедитесь, что отображен порт отладки, а затем подключитесь к отладчику Eclipse.

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

Ответ 2

Используя AndroidProguardScala, я успешно отлаживаю, используя scala 2.10 и Eclipse 3.7 Он также касается понятий как обычного плагина. См. Подробный ответ:

Eclipse, Android, scala упрощен, но все еще не работает

Единственной недостающей функцией является новый отладчик scala в последнем плагине scala eclipse, который еще не интегрирован. Так, например, чтобы отладить карту, вам придется идти с такими файлами, как Map.scala, ArrayBuffer.scala, Object.scala и т.д.