Pycharm: ошибка "неразрешенной ссылки" на IDE при открытии рабочего проекта
Введение
У меня есть проект Python в репозитории git. Все работает нормально для большинства членов команды, мы можем синхронизировать код и редактировать его без каких-либо проблем с Pycharm на разных платформах (Windows, Linux)
Проблема
На одном из компьютеров мы получаем "Unresolved reference" по всему коду почти для каждого импорта, за исключением встроенных в Python библиотек (т.е. импортирует datetime). На этом компьютере установлена версия Pycharm Mac.
Вопрос
Кто-нибудь знает, как это решить?, так как большая часть импорта не распознается завершением кода и навигацией через goto- > declare и т.д., не работает. Есть ли известная проблема с версией Mac?
Спасибо заранее!
Ответы
Ответ 1
Ключ должен указывать исходный каталог в качестве корня источника. Попробуйте следующее:
- В представлении "Проект" щелкните правой кнопкой мыши исходный каталог Python
- В меню диалога выберите Отметить каталог как > Корень источника
Теперь папка должна быть синей, а не бежевой, чтобы указать, что это исходная папка Python.
Вы также можете настроить это в настройках PyCharm, выполнив следующее для проекта, который уже находится в PyCharm:
- На панели инструментов Mac выберите PyCharm > Настройки
- В открывшемся окне выберите Структура проекта в панели меню слева.
- Выберите проект в средней панели, если необходимо
- Щелкните правой кнопкой мыши на источнике Python в правой панели и выберите Источники в диалоговом окне меню
Ответ 2
У меня также была проблема, и мне потребовалось несколько часов, чтобы найти точное решение.
Вам нужно подтвердить следующее.
-
'django.contrib.staticfiles'
, добавляется в INSTALLED_APPS
в файле settings.py
вашего приложения.
-
Каталог со статическим содержимым (например, изображениями) с именем static
находится под корнем приложения.
Теперь выполните следующие действия
PyCharm > Настройки > Настройки проектa > Django
Убедитесь, что ваши Django Project root
, settings.py
и manage.py
script четко определены в диалоговом окне.
Вы хорошо пойдете.
Надеюсь это поможет.
Ответ 3
Я сделал все вышеперечисленное из einnocent и myildirim, но все равно должен был сделать следующее:
закрыть pycharm и вручную удалить папку .idea, это удалит все, что pycharm знает о коде.
открыть pycharm, reimport проект
комбинация установки правильного корня источника, перезапуск python с invalide cache и удаление папки .idea/реимпорт проекта pycharm исправили его для меня.
Ответ 4
Я столкнулся с аналогичной проблемой с pyspark (искра 2.1) и luigi.
Сбой попытки:
- Настройка переменной среды PYTHONPATH
- Недействительный кеш и перезапуск pycharm
- Отметьте каталог как Корень источника
Неразрешенная ссылка pyspark
может быть исправлена путем добавления каталога искрового питона в Content Root в проекте, но запуск проекта в качестве задачи luigi дал та же ошибка.
Успешные шаги
- Создайте пустой
__init__.py
файл в проекте
-
Включите следующие строки кода вверху script
...
import sys
sys.path.append("/path/to/spark/python")
sys.path.append("/path/to/spark/python/lib")
...
// import pyspark files after above mentioned lines
и нерешенной проблемой ссылка ошибка была исправлена как в PyCharm и задачи LuiGi.
Ответ 5
Другой причиной может быть проектный интерпретатор. Например, если вы используете Python3.x, но интерпретатор предназначен для Python2.x. Вы можете проверить здесь:
Файл | Настройки | Проект: 'projectname' | Переводчик проекта
Ответ 6
PyCharm - Alt-F (ile); Настройки; Структура проекта; нажмите + добавить корневой контент;
укажите свою папку, содержащую пакет, в конфликте:/home/joker/anaconda3/envs/conda_py27/lib/python2.7/site-packages.
Я дополнительно отмечен как ресурсы (не уверен, что это обязательно). Нажмите "ОК", и произойдет переиндексация.
Эта решила проблему для меня в PyCharm Professional 2016.2.3
Ответ 7
Моя десятка - Если вы работаете с виртуальными средами (у вас есть каталог venv
), убедитесь, что он помечен как исключенный.
Плагиат сверху:
- В представлении "Проект" щелкните правой кнопкой
venv
каталог venv
- В диалоговом меню выберите Пометить каталог как > исключенный
Каталог должен стать оранжевым...
Это иногда случается, если вы сделали git clean
или по какой-то причине вам пришлось перестраивать вашу среду, а PyCharm не заметил