Ваш проект містить помилки, виправте його, перш ніж запустити його


187

Я розробляю простий додаток для Android. Але коли я запускаю Eclipse, він показує таку помилку:

Ваш проект містить помилки, виправте його, перш ніж запустити його.

Я не можу знайти жодної помилки в моєму проекті або в моїй програмі немає помилок. Під назвою програми є червоний хрест, але це не під іншим іменем файлу.

Хтось ще має це питання?


На жаль, жодне з них не працювало для мене ... Створення нових проектів та видалення .android ... не працювало. Мабуть, Eclipse втратив деякі налаштування і відмовляється запускати будь-який новий проект або Java, або Android
JPM


3
Завжди дивіться на панель «Маркер». Помилки там узагальнені.
Thorbjørn Ravn Andersen

Відповіді:


220

Зазвичай це відбувається через помилки на шляху складання.

Якщо ви використовуєте затемнення, ви можете додати перегляд, у якому перераховані всі помилки під назвою "Проблеми":

введіть тут опис зображення

В іншому випадку ви можете спробувати очистити проект, і це зазвичай вирішує кілька проблем.

Нарешті, якщо ви додасте або зміните ресурси за межами IDE, ви захочете перезавантажити ресурси та очистити.

EDIT (коментар анонімного користувача)

Це також може бути спричинене застарілим "Сертифікатом налагодження", виправленим таким чином:

ЯКЩО ВСІ НЕПРАВИЛИ, ЦЕ ГОТТА БУЄ РЕШЕННЯ:

Видаліть сертифікат налагодження в розділі ~/.android/debug.keystore(на Linux та Mac OS X); каталог щось подібне %USERPROFILE%/.androidдо Windows.

Потім плагін Eclipse повинен генерувати новий сертифікат при наступній спробі створити пакет налагодження. Вам може знадобитися очистити, а потім створити, щоб створити сертифікат.

Це ще одне виправлення для "setContentView (R.layout.main);" помилка, яка говорить, що він не може знайти R.layout.main, коли він фактично створений. (R не може бути вирішено змінною).

Це ще одне виправлення помилки "У вашому проекті є помилки ...", і ви не можете їх знайти. Очистити та відновити все ще потрібно після створення нового сертифіката налагодження.


5
Важливо розуміти, що проблеми не завжди будуть повідомлятися у файлі вихідного коду за номером рядка. Проблеми з проектом у цілому, як проблеми з побудовою контуру, будуть додані на рівні проекту. Ви не зможете побачити текст проблеми ніде, окрім перегляду "Проблеми".
Костянтин Комісарчик

6
ключ налагодження, що минув, минув, як правило, у мене. Кожен рік. я дійсно повинен помістити нагадування у своєму календарі чи щось таке.
Харло Холмс

Він виправляє мою таку ж помилку, принаймні, червоний x зник з назви проекту. Дякую ... чудова допомога
wocmultimedia

2
Термін дії налагодженого
терміну

як чистити та перебудовувати?
Ян Девіс

35

Спочатку перейдіть у вікно -> Показати перегляд -> журнали помилок у меню. Він відображатиме журнали помилок, якщо вони є. Потім спробуйте очистити проект і створити його заново.


Загалом, гарна ідея зберегти цю помилку - а також спробувати виправити попередження, які вона показує.
Хейко Рупп

3
Перегляд журналу помилок показує несправність у плагінах Eclipse. Це корисно для повідомлень про проблеми, але записи не вказуватимуть на проблему в коді програми користувача. Для цього потрібно переглядати проблеми.
Костянтин Комісарчик

1
У мене схожа проблема (але з NDK / C ++). Мої проекти NDK + для Android складаються успішно, але Eclipse не дозволяє запускати / налагоджувати його. У мене є помилка в #include <list> (я не додав шлях до STL до ресурсів, і не хочу цього робити). Як це могло бути можливим, чи є можливість вимкнути це? Я хочу бачити, що не дуже реальні «помилки», але я хочу запустити додаток (який НЕ містить помилок компіляції / посилання).
Крістіян Бігай

для мене проблемою був сертифікат налагодження. І пропозиція відкрити вікна "проблем" також була корисною. Я дивився під вікном "помилки", в якому нічого не було показано.
user590849

Я отримав цю помилку в Журналі помилок: Помилка при генерації остаточного архіву: Неможливо отримати ключ підпису налагодження.
Пратік Бутані

13

Ну, у моєму випадку деякі бібліотеки зверталися двічі у:

Проект >> Властивості >> Шлях до збірки Java >> Бібліотеки

Мені просто довелося видалити дублікат, і він спрацював нормально без будь-яких очищення чи освіження.


Зніміть прапорці з файлів jar в Project >> Properties (Властивості) >> Java Build Path >> Order and Export
Ajay Takur

У випадку, якщо ПОПЕРЕДЖЕННЯ помилка символу! шоу в проекті. Я вирішив наступні кроки проект >> Властивості >> Збірка Java Build Path на лівій панелі та вибрала бібліотеки в банку jar файлу правої панелі (3 стовпчик) помилка. Просто додайте файл JAR до тієї самої папки libs проекту у спливаючому віці. видалити помилковий файл ліб. Це працює для мене.
gnganpath

10

Я бачив це з існуючим проектом. Я вніс кілька змін, але нічого нового не імпортував. Перезапуск Eclipse не допомогло.

Project->Clean вирішили проблему.


6

Я часто зустрічаю цю помилку, коли імпортую новий проект у свою робочу область.

Причина : Деякі необхідні файли (LikeR.Java) не генеруються у відповідних пакетах.

Лікування : очищення та створення проектів. Усі файли, які потрібно створити автоматично, будуть розміщені на місці після створення проекту.

Найкраща удача.


5

Це сталося зі мною. Після формату моєї системи,
коли я імпортую проект, він показує таку ж помилку

видаліть перший файл debug.keystore, потім goto -

Проект -> Властивості проекту -> виберіть бібліотеку -> видалити -> додати знову бібліотеки.

Це працює для мене ......


4

Перейдіть до меню проектів, натисніть на чистий пункт меню.

Після цього закрийте затемнення і знову відкрийте і спробуйте скласти ..

Це програмний глюк, який ви зустрічаєте кілька разів.


4

це також може статися, якщо ви перемістите потрібні файли. Просто перевірте Перегляд проблем (меню window -> show view -> Problems), як сказано тут


3

У мене була така ж проблема. Єдиним рішенням, яке б спрацювало, було б створення абсолютно нового проекту, але я не думаю, що в цьому немає потреби. Для мене проблема полягала в тому, що термін дії сертифікату налагодження, який отримується автоматично створений, закінчився. Видалення цього файлу дозволило Eclipse відновити цей файл, що вирішило проблему. Ви не можете запустити додаток з недійсним сертифікатом, будь то налагодження чи сертифікат випуску. Зауважте, що очищення мого проекту не вийшло. Для отримання додаткової інформації дивіться: Помилка "Сертифікат налагодження минув" у плагінах Eclipse Android


Ви не самотні, дивіться також: stackoverflow.com/questions/8467835 / ...
Асмо Soinio

3

Нещодавно я натрапив на цю помилку. Я справді був у кутку без допомоги, тоді я зрозумів це. Ця помилка може виникнути з наступних причин:

  • Помилка в коді проекту
  • Неправильне підключення зовнішніх файлів бібліотеки до проекту
  • Найголовніше: якщо ваш файл debug.keystore закінчився.

Перші два випадки легко визначити, але третій - це як пошук чорної скриньки в темній кімнаті.

Отже, крім Project -> Clean, видаліть і файл debug.keystore.

Я використовую Mac + Eclipse, щоб видалити, я написав команду rm ~/.android/.debug.keystoreв термінал.


3

Чи є спосіб ігнорувати наявні помилки в проекті. Щось подібне, що дозволяє затемнення у випадку проектів java.

У моєму випадку помилки існують у каталозі jni. Помилки відображаються, навіть якщо ndk-buid успішний. Отже, все, що я хочу зробити, це ігнорувати помилки, про які повідомляє eclipse.

Якщо помилки дійсно є помилками, тоді я повинен отримати невирішені символи під час ndk-збірки.

Я переконався, що стандартні андроїд включає в себе включені шляхи.

Також мій проект має тип android / c / c ++.

У мене є два будівельника, пов'язані з проектом 1. стандартний android builder 2. користувальницький ndk builder, який ive явно створив.


( eclipse.org/forums/index.php/t/274600 ) Перейдіть у вікно-> Налаштування-> C / C ++ -> Аналіз коду та зніміть прапорці з помилковими попередженнями.
bartolo-otrit

2

Змоделюйте свою помилку в класі. Тоді збережіть його, і це покаже більше помилок, ніж ви імітували. Для мене це був неправильний імпорт, і це допомогло.


2

У мене була подібна проблема.

На вкладці "Проблеми" я знайшов помилку із записом "Помилка при генерації остаточного архіву: термін дії налагодження закінчився 2/22/12 1:49 PM"

Тому моя порада - подивитися на вкладці "Проблеми", щоб отримати додаткову інформацію.

До побачення


1

Якщо жодне з перерахованих вище рішень не працює, слід перевірити READ ONLYвластивість папки Project, якщо вона є лише для читання, компілятор не зможе перезаписати ресурси, файли R.java та інші файли dex APK тощо, отже, це станеться .. Це сталося зі мною, і я виправився після тривалої боротьби .. Щасливе програмування.


1

Чомусь затемнення лише показало! помилка в root і не вказала, що це за помилка. Перейдіть у Windows -> Показати перегляди -> Проблеми. Ви можете знайти всі попередні помилки там, видалити їх, зробити чисту збірку та створити заново. Ви побачите точні помилки.

Eclipse показує помилку в проекті Android, але може знайти помилку


1

У мене була така точна проблема, коли я намагався запустити додаток Doodlz , з книги Android для програмістів , на Mac OS X з Eclipse Juno .

Завантаживши та розпакувавши демонстраційні матеріали з книги, я забув змінити дозвіл на файли. Вони були лише для читання в моїй системі, тому це був перший випуск .

Друге питання було вирішено шляхом вибору цілі збірки на Eclipse. Це було виправлено, перейшовши до: Проект> Властивості та натиснувши поле Android на лівій панелі, щоб мати можливість вибрати один варіант як Ціль збірки проекту , який у моєму випадку був:

  Target Name     Vendor         Platform    API Level
> Google APIs     Google Inc.    4.0.3       15

Тоді прибирання та відновлення проекту не виявило помилок.

Нарешті, для запуску програми клацніть правою кнопкою миші пакет (на вкладці Провідник пакетів), а потім виберіть: Запустити як> Додаток Android


1

Просто видалили мій сертифікат налагодження під ~/.android/debug.keystoreі Project->Cleanвирішили проблему.


0

Видаліть папку .android зі своїх Документів і налаштувань \ Користувач \ у XP та \ Користувач \ у Win7. Відтворіть AVD ще раз і створіть новий проект.


0

Що викликало цю проблему для мене, було ніщо з перерахованого вище, а просто те, що після випуску я залишив атрибут "налагоджуваної" помилковим у файлі manifest.xml. D'oh!

Звичайно, ні вікно LogCat, Журнал помилок, Консоль чи Проблеми не сповістили про це.


0

У мене була така ж помилка, коли я копіював проект на інший комп'ютер.

Потім я перевірив усі властивості проекту на обох машинах, і єдине, що відрізнялося, - це порядок елементів у Java Build Path - вкладка «Порядок та експорт».

Я перемістив елементи Android XXX та Android залежно від інших 2 у списку (у моєму випадку папки src та gen) та вуаля, він знову працював!

Я не дуже впевнений, чи проблема була в дійсності різним порядком, але, принаймні, змінити її (і зберегти властивості знову), здавалося, допоможе ...


0

У мене була точно така ж проблема після оновлення SDK та ADT. Мою проблему було вирішено, видаливши папку .android (приховано) підC:\Users\USERNAME\


0

Це сталося зі мною, коли я експериментував з Мейвен.

Клацніть правою кнопкою миші проект -> Maven -> відключити характер maven виправили проблему для мене.


0

Так, це досить криптовалюта. Якщо у вас несправний проект (скажімо, над яким ви працювали в минулому), ви отримаєте це повідомлення (і жодних повідомлень у панелях проблем / журналу помилок у вашому поточному проекті).

Ви можете просто запустити свій поточний проект. Це може бути прекрасно. Просто виберіть стрілку вниз праворуч від кнопки Виконати, щоб вибрати проект.


0

Спробуйте змінити робочу область. Я не впевнений, що це точне рішення. Я зіткнувся з тією ж проблемою колись, поки я не змінив робочу область.


0

У моєму випадку це відбувається з ADT 22.

Я не хочу створювати Діяльність.

Після того як я видалю "appcompat_v7" як проект бібліотеки. Я працюю.


0

У мене була подібна проблема, коли я не міг запустити свій проект, але в коді не було проблем. На панелі журналу помилок було сказано щось на кшталт "Неможливо додати P / до списку сегментів P / in як батьків". Перезапуск Eclipse вирішив проблему.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.