Android Studio внезапно не может разрешить символы
Android Studio 0.4.2 отлично работает, и сегодня я открыл его, и почти все было красным, и автозаполнение перестало работать. Я смотрю на импорт, и AS, похоже, говорит мне, что он не может найти android.support.v4 внезапно (предлагая мне возможность удалить неиспользуемые импорты). ( android.support.v7, кажется, все равно).
Вещи, которые я пробовал:
- Восстановление проекта
- Очистка проекта
- Синхронизация с Gradle файлами
- Закрытие проекта, закрытие AS и перезапуск/повторное открытие.
- Файл > Invalidate Caches/Restart
- Изучение Линта не показало ничего очевидного.
- Двойная проверка всех библиотек поддержки обновлена в менеджере SDK
- Изучение моего Build.gradle, хотя никаких изменений и он не отличается от обычного, как он работал все время.
Здесь это в случае, если это имеет значение:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 19
buildToolsVersion '19.0.0'
defaultConfig {
minSdkVersion 8
targetSdkVersion 19
}
}
dependencies {
compile 'com.android.support:support-v4:19.0.0'
compile 'com.android.support:gridlayout-v7:19.0.0'
compile 'com.android.support:appcompat-v7:19.0.0'
compile 'com.google.android.gms:play-services:4.0.30'
compile project(':libraries:facebook')
compile files('libs/core.jar')
}
Когда я нажимаю "Синхронизировать с Gradle" и открываю "Настройки проекта", я получаю красную ошибку, сообщаю мне, что у меня дубликаты библиотек и удаление неиспользуемых.
![enter image description here]()
Мой проект компилируется и работает отлично, но мне действительно нужна работа автозаполнения!! У кого-нибудь есть предложения?
![enter image description here]()
Ответы
Ответ 1
Вы уже включили список большинства вещей, которые были бы полезны, но вы могли бы попробовать:
- Выйти из Android Studio
- Резервное копирование проекта
- Удалите все .iml файлы и папку .idea
- Перезапустите Android Studio и reimport ваш проект
Кстати, сообщения об ошибках, которые вы видите в диалоговом окне "Структура проекта", по большей части являются фиктивными.
UPDATE:
Android Studio 0.4.3 доступен в канале канала канарейки и, надеюсь, решит большинство из этих проблем. Могут быть некоторые затяжные проблемы; если вы видите их в 0.4.3, сообщите нам и попытайтесь дать нам надежный набор шагов для воспроизведения, чтобы мы могли обеспечить, чтобы мы позаботились обо всех путях кода.
Ответ 2
Ни одна из вещей, упомянутых ранее, действительно не работала для меня. Но затем я нашел эту запись в меню файла Invalidate Caches/Restart
, которая, похоже, устранила проблему.
Я не знаю, что произошло на заднем плане, но когда Android Studio снова запустилась, строка состояния указала Indexing...
на минуту или около того, что, по-видимому, сделало чудеса.
Для справки я использую Android Studio 0.5.4.
Ответ 3
Пройдите по ссылке, и это сработало для меня.
1.) Выберите опцию "Файл" в меню в левой верхней части студии Android.
2.) Выберите параметр: "Invalidate Cache/Restart..". Откроется диалоговое окно.
3.) Нажмите на первую кнопку с опцией: "Invalidate and Restart"
4.) Он закроет студию и перезапустит ее. Начните индексирование проекта.
Он решил мою проблему:
Файл → Недействительный кэш/Перезапуск → Недействительный и перезапуск
Источник:
https://www.youtube.com/watch?v=FX_gCTpqhwM
Ответ 4
Android Studio 1.3
- Откройте Настройки модуля
- Нажмите модуль в меню "Модули"
- На вкладке свойств установите для параметра java версию Источник совместимости и Целевая совместимость.
Я ничего не сделал, и это сработало для меня.
Ответ 5
Для меня это была запись "progaurd" в моей build.gradle. Я удалил весь блок сборки, затем выполнил ресинхронизацию и проблему.
Ответ 6
В Android Studio гораздо более легкое решение, и оно обычно работает для меня, не требуя решения для грубой силы, упомянутого в других ответах, поэтому вы должны попробовать это в первую очередь: ![enter image description here]()
нажмите на символ "gradle" в правой части Android Studio, а затем в "Refresh all Gradle projects".
Ответ 7
Я использую Android Studio 3.1.4, и у меня возникла такая проблема при переходе от моей ветки развития с более низкой целью api к другой ветке с целевым api Oreo. Я попробовал первое решение, которое сработало, но это довольно сложно, а второе решение не решило проблему.
Мое решение Когда проблема выскочила снова, я попытался немного модифицировать свой файл с градиентом приложения, чтобы AS попросил меня синхронизировать файлы, и это сделало трюк. Затем я удалил изменение.
Я думаю, что "Sync Project with Gradle Files" может работать, но я сам не пробовал
Надеюсь, поможет
Ответ 8
Думаю, я тоже выброшу его:
то, что сработало для меня, изменило мой вариант сборки на вариант, который работал ранее. По какой-то причине я изменил это раньше (и я забыл почему).
в любом случае, лучше всего попытаться вспомнить, что вы изменили в этот день (это может быть что-то меньшее, чем очистка, или возврат к предыдущему объявлению git)... и т.д.
он также помогает попытаться выполнить повторную синхронизацию gradle и принудительно восстановить.
Ответ 9
Борьба с той же проблемой в течение пары часов этим утром. Построение моего проекта из командной строки, похоже, сделало трюк для меня.
Точные шаги -
- Клонированный свежий репозиторий (в репозитории нет файлов студии Android)
- Встроенный проект отладки из командной строки (./gradlew clean assembleDebug)
- Откройте Android Studio, импортируйте проект
Чтобы проверить, работает ли это, посмотрите в папку проектов взорванных пакетов, проверьте библиотеку и найдите class.jar. Если он расширяем, тогда все будет в порядке.
edit - Я обнаружил, что после чистки в студии Android он снова сломался. Поэтому, если вам нужно очистить, вам нужно будет сделать этот процесс еще раз.
Ответ 10
Ни один из этих методов не помог мне в Android Studio 0.5.8.
Моим решением было удалить каталог ~/.AndroidStudioPreview(в Ubuntu). Извините, я понятия не имею, где это в других ОС. В этом каталоге хранятся временные файлы и настройки Android Studio, поэтому я пропустил все мои настройки. Но это работает!
Ответ 11
Другой способ - загрузить JDK 1.7 и изменить путь из Android Studio в сообщении об ошибке.. и выбрать домашнюю папку, которая содержится в папке Jdk 1.7
Ответ 12
Сегодня такая же проблема. Исправлено это, изменив местоположение jdk в структуре проекта от \java\jdk1.7.0_05
до \java\jdk1.7.0_25
(о котором я не знал до сих пор).
Я использую Android Studio 0.8.6.
Ответ 13
Я исправил это, удалив settings.gradle
из моего подпроекта модуля. Это проект Java Gradle с его собственным settings.gradle
файлом, который каким-то образом его закручивает.
Благодаря этому парню: fooobar.com/questions/40442/...
Ответ 14
Я попытался очистить проект и затем сделать недействительным кеш, ни один из которых не сработал. Для меня работало закомментировать все мои зависимости в build.gradle (приложение), затем синхронизировать, затем снова раскомментировать зависимости, а затем снова синхронизировать. Боб твой дядя.
Ответ 15
У меня возникла аналогичная проблема, но я выполнил следующие шаги в моем случае: -
1). Создайте проект в папке .idea open modules.xml.
2). Проверьте, есть ли две записи для одного и того же файла iml.
3). Удалите одну из дублирующих записей и закройте андроид-студию или снова создайте файл gradle.
В моем случае это сработало.
Надеюсь, что это поможет.
Ответ 16
Я решил это, установив JDK. Я получил всплывающее сообщение о том, что Setup JDK, когда я навел мышь на ошибку.
Ответ 17
У меня была та же проблема, ни одно из перечисленных здесь решений не работало. Проблема была в моих исходных файлах, где не внутри правой папки.
Структура каталогов ДОЛЖНА быть:
[project]\[module]\src\main\java\[yourpackage]\[yourclass.java]
Ответ 18
Я наконец выяснил, что вызывает эту проблему.
На самом деле вам следует избегать нажатия папки .idea/libraries
в ваш репозиторий. Это создает странные вещи в Android Studio, которые, как правило, удаляют все загруженные библиотеки.
Если у вас есть история фиксации, просто воссоздайте все отсутствующие файлы библиотеки и избегайте их повторного использования. В противном случае просто удалите целую папку .idea
и reimport в AS.
Ответ 19
попытайтесь изменить свой build.gradle с помощью этого значения:
android { compileSdkVersion 18 buildToolsVersion '21.0.1 '
defaultConfig {
minSdkVersion 18
targetSdkVersion 18
}
Ответ 20
Я использую общие настройки, но Android Studio жаловалась на символ редактора. Затем я добавил
import android.content.SharedPreferences.Editor;
и теперь символ прохладный.
Ответ 21
Пожалуйста, проверьте, есть ли у вас путь к проекту, который имеет специальные символы! (восклицательный знак).
В аналогичной проблеме, с которой я столкнулся, это была основная причина - поскольку многие приложения Java, похоже, не переносят такие специальные символы (например, например, "gradlew clean" 'из терминала не сработает и выкинет исключение RunTimeException.).
Ни одно из других решений, опубликованных в Интернете, не помогло мне. Но, как только я удалил! с пути и сделал чистую сборку, Android Studio магически сработала.
Ответ 22
Я попробовал все перечисленное здесь.
Затем я проверил свой файл androidmanifest.xml
У меня было несколько неудобств, из-за переименования папок и переименования пакетов.
Ответ 23
В моем мультимодульном проекте проблема заключалась в том, что версия "com.android.support:appcompat-v7" в модуле A была "22.0.0", но в B - "22.2.0".
Решение: убедитесь, что
1. версия общих библиотек одинакова среди модулей.
2. каждый из модулей компилируется без каких-либо ошибок (попробуйте построить каждый из них из CLI).
Ответ 24
Помните, что имя файла и специально папки может привести к этой ошибке. Например, если у вас есть папка "Помощники", а пакет для файлов в этой папке - "com.whatever.helpers", это не приведет к какой-либо ошибке компиляции, но приведет к тому, что студия Android не сможет загрузить символы в этой папке,
Одна из типичных причин этого - когда вы назовете папку с первой заглавной буквой, скопируйте ее на Git и позже измените имя папки на все строчные буквы. Система Git не распознает изменение, приводящее к несоответствию между локальными и удаленными репозиториями, на которые влияют только новые клоны репозитория.
Ответ 25
Другая очень тонкая причина:
Библиотека с несколькими вкусами должна быть скомпилирована определенным образом, чем обычный одноразовый. В противном случае он беззвучно производит ошибку разрешения ошибок.
Многофункциональное приложение, основанное на библиотеке с несколькими вкусами в Android Gradle
Ответ 26
У меня было гораздо более странное решение. В случае, если кто-то сталкивается с этим, стоит дважды проверить ваш файл gradle. Оказывается, что, когда я клонировал этот git и gradle, он запускал одну строку из моего файла build.gradle(app).
dependencies {
provided files(providedFiles)
Очевидно, проблема заключалась в том, чтобы просто добавить его обратно и повторно синхронизировать с градиентом.
Ответ 27
У меня была похожая проблема, когда я перестраивал файл aar и заменял старый в своем проекте новым. Я рассмотрел все решения здесь, и никто не решил мою проблему. Позже я понял, что minifyEnabled был установлен в true в проекте библиотеки, что эффективно удаляло много мертвого кода, который не использовался в проекте библиотеки.
Мое решение состояло в том, чтобы установить для minifyEnabled значение false в проекте библиотеки, собрать файл aar, скопировать его в мой проект, сделать недействительными кэши и синхронизировать проект оценки, и все работало нормально.