Intereting Posts
Удалить поле в значке панели инструментов Android Класс Android VpnService и его класс-строитель Начать распознавание речи через голос фразой типа «О'кей, Google»? Android sip stack с поддержкой обработки кодеков? Android.widget, textView не может быть добавлен в android.widget, button Ошибка: плагин с id 'com.github.dcendents.android-maven' не найден Запустить службу на Android Как включить автоматическое создание ярлыков после загрузки и установки приложений с Android Market? Должен ли я использовать Bitmap или Drawable для хранения в ImageCache на Android? Могу ли я установить значок дома на панели действий с помощью styles.xml? Что это значит «xmlns: xliff»? XML Создайте конверт для мыла с заголовком безопасности в android, используя ksoap2 Плюс одна опция совместного использования кнопки делает пустую запись Создайте поток пользовательского интерфейса вручную в Android, чтобы увеличить его размер небольшого стека Диалоговое окно Android Borderless

Открытие исходного кода из редактирования отладки .class после обновления Android R18

Когда я отлаживаю свой код в Eclipse, меня раздражает, когда я открываю редактор, чтобы узнать, что я не могу его редактировать, потому что я действительно просматриваю источник файла .class. Как заставить Eclipse открывать файл .java вместо файла .class в режиме отладки?

EDIT: Когда я попал в точку останова в своем коде, он возвращает меня в MyFile.class вместо MyFile.java, поэтому я могу видеть свой код, но не редактировать его.

EDIT: Я предполагаю, что это имеет какое-то отношение к Android и ADT R18

Solutions Collecting From Web of "Открытие исходного кода из редактирования отладки .class после обновления Android R18"

После того, как я наконец нашел какое-то время и вескую причину, чтобы изучить этот вопрос немного глубже, я немного опишу ответ Торнбьорна.

В последнее время Google изменил способ, которым ваши Android-проекты объединяют ваши внешние библиотеки Android. В ADT R17 (я думаю) он начал упаковку источника внешних проектов в файлы .jar и включил их непосредственно в ваш проект в папке Android Dependencies или / libs.

Теперь, когда отладчик достигает точки останова, он выводит ваш исходный код в .jar, в основном говоря вам редактировать файл .class. Проблема в том, что этот файл доступен только для чтения, поэтому вам нужно найти свой источник .java вручную. (Боль)

Исправление состоит в том, чтобы щелкнуть правой кнопкой мыши по названию проекта в окне отладки и выбрать «Изменить поиск источника …» в меню. Оттуда удалите путь поиска по умолчанию. После этого вручную добавьте связанные проекты (не баночки), которые ссылаются на ваш проект. Это делается нажатием кнопки «Добавить», выбрав «Java Project», а затем проверьте соответствующие проекты.

  1. Откройте main project properties -> Java Build Path -> Projects tab и добавьте туда проекты, от которых зависит главный проект.
  2. Перейдите на вкладку « Order and Export » и снимите флажок « Android Dependencies
  3. наслаждаться

Хорошо, поэтому я ненавижу быть «этим парнем», учитывая количество людей, для которых это сработало, но это не сработало для меня. Я имею в виду, что пункт меню «Изменить источник …» не был в контекстном меню. Я не пропустил инструкцию для этого в Debug Perspective (предположительно в Project Explorer в Debug Perspective). Я попробовал это, пока приложение было запущено, и пока приложение было приостановлено. Я попробовал проверить меню для проекта приложения (по-видимому, на что ссылаются инструкции) и для проекта библиотеки. Нет кубиков. Это последняя сборка Eclipse.

Однако я смог решить проблему:

  1. Установите точку останова либо в приложении, либо в библиотеке, для которой вы хотите связать источник. Фактически вы можете разместить это в любом месте, пока библиотека, которую вы пытаетесь связать с исходным кодом, имеет функцию, которая будет отображаться в стеке вызовов при ударе точки останова .
  2. Начните отладку своего приложения.
  3. Перейдите в приложение, чтобы попасть в точку останова.
  4. Убедитесь, что вы находитесь в режиме отладки.
  5. На вкладке «Отладка» (где отображается стек вызовов) найдите любую функцию из вашей библиотеки.
  6. Щелкните эту функцию правой кнопкой мыши. Пункт меню «Редактировать поиск источника …» должен находиться там (рядом со дном).
  7. Отсюда инструкции такие же, как у Стайлера. Нажмите «Добавить», выберите «Java Project» и добавьте проект (или несколько проектов).
  8. Перед тем как выйти из окна «Редактировать исходный поиск …», если вы похожи на меня, вы увидите, что Eclipse решил добавить кучу вещей в список, который вы не выбрали. Некоторые из этих материалов (вероятно, под расширяемыми элементами с именами, такими как «Частные библиотеки Android», могут быть банками для библиотек, для которых вы просто добавили источник. Удалите эти банки из списка.
  9. Прибыль!

По какой-то причине Eclipse не считает, что файл класса поступает из вашего файла Java. Это часто некорректный путь сборки или файл jar, который используется вместо проекта, генерирующего файл jar.

Просмотрите панель управления проектами (кнопка <-> ), чтобы увидеть, где Eclipse находит файл класса, а затем выяснить, почему он использует это местоположение вместо вашего проекта с исходным файлом.