`ImportError: нет модуля с именем AppKit` после установки AppKit и PyObjC - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь заставить работать некоторый код Python для новой установки на Anaconda в Mac OS X Mojave с Python 2.7.Это все, что раньше работало на той же машине.

Я получаю следующую ошибку:

Mac:~ kuzzooroo$ python
Python 2.7.15 |Anaconda, Inc.| (default, Dec 14 2018, 13:10:39)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import AppKit
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named AppKit

Строчные буквы тоже не работают:

>>> import appkit
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/kuzzooroo/anaconda2/lib/python2.7/site-packages/appkit/__init__.py", line 11, in <module>
    from AppKit import _metadata
ImportError: No module named AppKit

Я много занимался поиском, и предложения по устранению этой ошибки в основном имеют форму «убедитесь, что вы установили X».Вот что у меня есть:

Mac:~ kuzzooroo$ brew install PyGObject PyGObject3
Warning: pygobject 2.28.7_1 is already installed and up-to-date
To reinstall 2.28.7_1, run `brew reinstall pygobject`
Warning: pygobject3 3.30.4 is already installed and up-to-date
To reinstall 3.30.4, run `brew reinstall pygobject3`
Mac:~ kuzzooroo$ pip install AppKit PyObjC PyObjC-core
Requirement already satisfied: AppKit in ./anaconda2/lib/python2.7/site-packages (0.2.8)
Requirement already satisfied: PyObjC in ./anaconda2/lib/python2.7/site-packages (5.1.2)
Requirement already satisfied: PyObjC-core in ./anaconda2/lib/python2.7/site-packages (5.1.2)
Requirement already satisfied: ... <many more lines>

Шаги brew install изменили ошибку с чего-то другого, но, как вы можете видеть, они не оставили меня с рабочей настройкой.

1 Ответ

0 голосов
/ 18 декабря 2018

Оказывается, кто-то написал пакет под названием AppKit, который является совершенно отличным компонентом операционной системы Mac.Вот еще один AppKit:

$ pip search appkit
AppKit (0.2.8)  - Desktop application framework based on Webkit HTML5, CSS3, Javascript and Python

Установка этого, в дополнение к PyObjC, создала конфликт, который привел к появлению бесполезного сообщения об ошибке No module named AppKit (на самом деле с этим именем работало не одно, а две вещи),

Запуск conda uninstall AppKit, а затем pip install --upgrade --force-reinstall PyObjC PyObjC-core исправил проблему.

...