Ошибка затмения: NoClassDefFoundError: java/lang/ref/FinalReference

Я установил Eclipse для Android, и это работает хорошо. Когда я пытаюсь запустить java-файл, я получаю следующую ошибку: Ошибка произошла во время инициализации виртуальной машины java/lang/NoClassDefFoundError: java/lang/ref/FinalReference

После некоторого исследования я знаю, что это было что-то с buildpass, но после попытки у меня это не получилось. Я удалил все это (Eclipse, Java, Android) и переустановил все, но с тем же разочаровывающим результатом. Может ли кто-нибудь объяснить мне, что делать, потому что то, что я попробовал из интернета, не сработало для меня.

5 ответов

Решение
  1. Найти работающие конфигурации -> Java-приложение
  2. На вкладке Classpath новой конфигурации найдите "Библиотека Android" в разделе "Загрузочные записи" и удалите ее.
  3. По-прежнему на вкладке "Путь к классам" выберите "Загрузочные записи" и нажмите кнопку "Дополнительно".
  4. Выберите Добавить библиотеку и нажмите ОК.
  5. Выберите Системную библиотеку JRE и нажмите Далее.
  6. Выберите JRE Workspace Default и нажмите Finish.

Основано на http://www.frickingnutz.com/files/android_pdf/FAQs.pdf

Я был разочарован этой ошибкой в ​​течение нескольких дней, сравнивая мои предпочтения Eclipse с моими коллегами, проблема была исправлена ​​путем изменения уровня соответствия Java с 1,7 до 1,6. Это также изменит сгенерированные файлы.class и совместимость с исходным кодом до 1.6.

Если вы попытались запустить определенный класс Java, то каждый раз, когда вы нажимаете кнопку "Выполнить", по умолчанию будет использоваться то, что вы пытались запустить в последний раз.

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

Перейдите к пункту "Выполнить настройки" в меню "Выполнить". Выберите меню "Удалить прогон". Сделайте чистку, и тогда вы должны вернуться и снова работать.

Я пытался использовать все ответы выше, но это не работает.

Эта ошибка произошла, когда я написал 1 метод, который возвратил String [][] (пока не знаю почему) но ошибка не исчезает при отключении (/* */) метод.

Наконец я сделал 2 вещи:

  1. Создан новый проект Android и скопируйте файлы. перестройте Activity.java и manifest.xml.

    Это работало до тех пор, пока я не активировал метод, затем снова и снова та же ошибка:

    VM java/lang/NoClassDefFoundError: java/lang/ref/FinalReference and then

    Произошла ошибка во время инициализации виртуальной машины, и независимо от того, что я делаю, она не работала, пока я не создал другой проект Android.

  2. Итак, второе, что я сделал, было:

    Run-> Run Configurations-> Java Application и нажмите New_Configuration, затем я нажал на красный крестик X выше (Удалить выбранную конфигурацию запуска), и это сработало (не метод, а программа работала, когда я /* */ Это.)

Другие вопросы по тегам