Virtualenv: Kein Modul namens 'virtualenv.seed.via_app_data'

Erstellt am 24. Juni 2020  ·  27Kommentare  ·  Quelle: pypa/virtualenv

Problem

Beim Aufrufen von virtualenv test erwarte ich, dass ein Ordner namens test erstellt wird, in dem alle Dateien der virtuellen Umgebung enthalten sind. Das beobachtete Verhalten ist nur die folgende Meldung ohne erstellten Ordnertest:
ModuleNotFoundError: No module named 'virtualenv.seed.via_app_data'

Umfeld

Stellen Sie mindestens bereit:

  • Betriebssystem: Ubuntu 20.04
  • pip list des Host-Pythons, auf dem virtualenv installiert ist:
Package                Version
---------------------- -------------
appdirs                1.4.4
apturl                 0.5.2
awscli                 1.17.14
blinker                1.4
botocore               1.14.14
Brlapi                 0.7.0
certifi                2019.11.28
chardet                3.0.4
chrome-gnome-shell     0.0.0
colorama               0.4.3
command-not-found      0.3
cryptography           2.8
cupshelpers            1.0
dbus-python            1.2.16
defer                  1.0.6
distlib                0.3.0
distro                 1.4.0
distro-info            0.23ubuntu1
docutils               0.16
entrypoints            0.3
filelock               3.0.12
httpie                 1.0.3
httplib2               0.14.0
idna                   2.8
importlib-metadata     1.5.0
jmespath               0.9.4
keyring                18.0.1
language-selector      0.1
launchpadlib           1.10.13
lazr.restfulclient     0.14.2
lazr.uri               1.0.3
louis                  3.12.0
macaroonbakery         1.3.1
more-itertools         4.2.0
netifaces              0.10.4
oauthlib               3.1.0
olefile                0.46
pexpect                4.6.0
Pillow                 7.0.0
pip                    20.1.1
protobuf               3.6.1
pyasn1                 0.4.2
pycairo                1.16.2
pycups                 1.9.73
Pygments               2.6.1
PyGObject              3.36.0
PyJWT                  1.7.1
pymacaroons            0.13.0
PyNaCl                 1.3.0
pyRFC3339              1.1
python-apt             2.0.0
python-dateutil        2.7.3
python-debian          0.1.36ubuntu1
pytz                   2019.3
pyxdg                  0.26
PyYAML                 5.3.1
reportlab              3.5.34
requests               2.22.0
requests-unixsocket    0.2.0
roman                  2.0.0
rsa                    4.0
s3transfer             0.3.3
SecretStorage          2.3.1
setuptools             45.2.0
simplejson             3.16.0
six                    1.14.0
systemd-python         234
ubuntu-advantage-tools 20.3
ubuntu-drivers-common  0.0.0
ufw                    0.36
unattended-upgrades    0.1
urllib3                1.25.8
virtualenv             20.0.24
wadllib                1.3.3
wheel                  0.34.2
xkit                   0.0.0
zipp                   1.0.0
  ```

**Output of the virtual environment creation**

```console
71 setup logging to NOTSET [DEBUG report:42]
88 find interpreter for spec PythonSpec(path=/usr/bin/python3) [INFO builtin:44]
88 proposed PythonInfo(spec=CPython3.8.2.final.0-64, exe=/usr/bin/python3, platform=linux, version='3.8.2 (default, Apr 27 2020, 15:53:34) \n[GCC 9.3.0]', encoding_fs_io=utf-8-utf-8) [INFO builtin:50]
88 accepted PythonInfo(spec=CPython3.8.2.final.0-64, exe=/usr/bin/python3, platform=linux, version='3.8.2 (default, Apr 27 2020, 15:53:34) \n[GCC 9.3.0]', encoding_fs_io=utf-8-utf-8) [DEBUG builtin:52]
89 filesystem is case-sensitive [DEBUG info:28]
Traceback (most recent call last):
  File "/home/florian/.local/bin/virtualenv", line 8, in <module>
    sys.exit(run_with_catch())
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/__main__.py", line 63, in run_with_catch
    run(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/__main__.py", line 17, in run
    session = cli_run(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 24, in cli_run
    session = session_via_cli(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 32, in session_via_cli
    parser, elements = build_parser(args, options)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/__init__.py", line 60, in build_parser
    SeederSelector(interpreter, parser),
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/seeders.py", line 8, in __init__
    possible = self.options("virtualenv.seed")
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 39, in options
    cls._OPTIONS = cls.entry_points_for(key)
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 18, in entry_points_for
    return OrderedDict((e.name, e.load()) for e in cls.entry_points().get(key, {}))
  File "/home/florian/.local/lib/python3.8/site-packages/virtualenv/run/plugin/base.py", line 18, in <genexpr>
    return OrderedDict((e.name, e.load()) for e in cls.entry_points().get(key, {}))
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'virtualenv.seed.via_app_data'
question

Hilfreichster Kommentar

Unsere Boxen schienen sowohl Debian-Versionen als auch Pip-Versionen installiert zu haben. Aber selbst nachdem ich die Debian-Version entfernt hatte, konnte ich dies nicht mit der neuesten (20.0.25) Pip-Version zum Laufen bringen. Alles funktioniert mit...

sudo pip3 install virtualenv==20.0.23

Alle 27 Kommentare

Wie hast du virtualenv installiert?

sudo apt install python3-virtualenv

Ich habe es schon mehrmals entfernt und neu installiert, ohne Erfolg.

In diesem Fall liegt das Problem nicht an virtualenv des Projekts, sondern an Debians Repackaging, also melden Sie Ihr Problem bitte unter http://bugs.debian.org/cgi-bin/pkgreport.cgi?package=python3-virtualenv

In der Zwischenzeit können Sie unsere alternativen Installationsmethoden verwenden, um die Nicht-Debian-Version zu erhalten https://virtualenv.pypa.io/en/latest/installation.html#installation

@kitterma Zur Info

Vielen Dank für die sehr schnelle Antwort... Ich werde die alternative Installationsmethode ausprobieren.

AKTUALISIEREN:
Ich habe es mit apt remove entfernt und die Installationsmethode mit pip ausprobiert, die besagte, dass sie bereits installiert war. Nach der Neuinstallation mit --force-reinstall funktioniert alles einwandfrei.

Vielen Dank. Die letzte Ubuntu-Veröffentlichung geschah zu einem Zeitpunkt, an dem ich noch an einigen Problemen in Debian arbeitete. Ich arbeite nicht direkt mit Ubuntu, daher bin ich mir bei den Details nicht sicher.

Freut mich, dass die Neuinstallation dein Problem gelöst hat.

@kitterma Beachten Sie, dass er es mit pip neu installiert hat, beachten Sie apt-get ... also ist dies per se immer noch auf Debian-Ebene defekt.

Vielen Dank. Habe das verpasst. Ubuntu habe ich nicht getestet. Unter Debian funktioniert es aber.

Tut es, was ist Ihre virtualenv-Version? Beachten Sie, dass virtualenv 20.0.24 den Seed des internen Implementierungsdetailmoduls umgestaltet hat ... also ist das Debian-Patching wahrscheinlich kaputt, es sei denn, Sie haben das seitdem behoben.

Ich werde das überprüfen und sicherstellen, dass ich wieder vor einem Computer sitze.

Beachten Sie, dass virtualenv 20.0.24 den Seed des internen Implementierungsdetailmoduls umgestaltet hat ... also ist das Debian-Patching wahrscheinlich kaputt, es sei denn, Sie haben das seitdem behoben.

Ubuntu 20.04 hat die Version 20.0.17.

Der Traceback in der Ausgabe zeigt auf /home/florian/.local/lib/python3.8/site-packages/virtualenv/ also vermute ich, dass @make-ing 2.0.24 über pip installiert hat, und diese Installation war irgendwie kaputt. Dies wäre vor dem Ubuntu virtualenv Modul in sys.path .

Unsere Boxen schienen sowohl Debian-Versionen als auch Pip-Versionen installiert zu haben. Aber selbst nachdem ich die Debian-Version entfernt hatte, konnte ich dies nicht mit der neuesten (20.0.25) Pip-Version zum Laufen bringen. Alles funktioniert mit...

sudo pip3 install virtualenv==20.0.23

@gaborbernat Ich habe 2.0.24 noch nicht gepackt, daher ist alles, was 2.0.24 in Debian oder Ubuntu enthält, nicht mit der Distributionsverpackung verbunden.

Es ist also wie oben beschrieben, dass nur Benutzer virtualenv sowohl über pip als auch über apt gleichzeitig installieren und Konflikte zwischen den Repositorys dies auslösen. Kann Debian in solchen Fällen irgendwelche Fehler auslösen?

Ich habe dieses Problem auch bei Ubuntu Bionic festgestellt, wenn ich virtualenv mit pip (nicht apt-get) installiert habe. Ein Downgrade auf 20.0.23 hat es in meinem Fall auch gelöst.

Ich kann auch bestätigen, dass ein Downgrade der Version auf 20.0.23 das Problem für die Fossa löst.

Ich habe das gleiche Problem. Wie macht man die Herabstufung?

@ruannyury pip uninstall virtualenv dann pip install virtualenv==20.0.23

In all diesen Fällen ist eine Herabstufung nicht die eigentliche Lösung. Es könnte das Problem vorerst beheben, aber Sie erhalten eine veraltete Version der Software. Sie sollten besser herausfinden, warum Sie zwei Versionen parallel installiert haben, und beide entfernen und dann die neue installieren.

Wie finden Sie es heraus? Verzeihung für die Unannehmlichkeiten

Mein Betriebssystem ist Manjaro 20.0.3

pip deinstallieren virtualenv, pip deinstallieren virtualenv? (Mach es zweimal)

Beim zweiten Mal:
`FEHLER: Ausnahme:
Traceback (letzter Anruf zuletzt):
Datei "/usr/lib/python3.8/shutil.py", Zeile 788, in move
os.rename(src, real_dst)
OSError: [Errno 18] Link entre dispositivos invalido: '/usr/bin/virtualenv' -> '/tmp/pip-uninstall-mpsr19ya/virtualenv'

Während der Behandlung der obigen Ausnahme ist eine weitere Ausnahme aufgetreten:

Traceback (letzter Anruf zuletzt):
Datei "/usr/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", Zeile 186, in _main
status = self.run(Optionen, Argumente)
Datei "/usr/lib/python3.8/site-packages/pip/_internal/commands/uninstall.py", Zeile 78, in Ausführung
uninstall_pathset = req.uninstall(
Datei "/usr/lib/python3.8/site-packages/pip/_internal/req/req_install.py", Zeile 687, in der Deinstallation
uninstalled_pathset.remove(auto_confirm, ausführlich)
Datei "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", Zeile 394, in remove
bewegt.stash(Pfad)
Datei "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", Zeile 283, in Stash
umbenennt(Pfad, neuer_Pfad)
Datei "/usr/lib/python3.8/site-packages/pip/_internal/utils/misc.py", Zeile 334, in Umbenennungen
Shutil.move(alt, neu)
Datei "/usr/lib/python3.8/shutil.py", Zeile 803, in move
os.unlink(src)
PermissionError: [Errno 13] Permissão negada: '/usr/bin/virtualenv'
`
Soll ich das Sudo verwenden?

Vielleicht haben Sie es mit Ihrem Betriebssystem-Installer installiert, versuchen Sie es auch zu deinstallieren?

Mit dem Superuser?
Update: Ich habe es verstanden.
Also installiere ich nochmal?

Lubuntu 20.04 Ich hatte das gleiche Problem. Behoben durch Zurücksetzen auf virtualenv==20.0.23

In all diesen Fällen ist eine Herabstufung nicht die eigentliche Lösung. Es könnte das Problem vorerst beheben, aber Sie erhalten eine veraltete Version der Software. Sie sollten besser herausfinden, warum Sie zwei Versionen parallel installiert haben, und beide entfernen und dann die neue installieren.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen