Edição
Ao chamar virtualenv test
espero que ele crie uma pasta chamada test com todos os arquivos de ambiente virtual lá. O comportamento observado é apenas a seguinte mensagem sem nenhum teste de pasta criado:
ModuleNotFoundError: No module named 'virtualenv.seed.via_app_data'
Ambiente
Forneça pelo menos:
pip list
do host python onde virtualenv
está instalado: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'
Como você instalou o virtualenv?
sudo apt install python3-virtualenv
Eu já removi e reinstalei várias vezes sem sucesso.
Neste caso, o problema não é com o virtualenv o projeto, mas com o reempacotamento do Debians, então por favor relate seu problema em http://bugs.debian.org/cgi-bin/pkgreport.cgi?package=python3-virtualenv
Enquanto isso, você pode usar nossos métodos de instalação alternativos para obter a versão não debian https://virtualenv.pypa.io/en/latest/installation.html#installation
@kitterma FYI
Muito obrigado pela resposta rápida ... tentarei o método de instalação alternativo.
ATUALIZAR:
Eu o removi com apt remove e tentei o método de instalação com pip que dizia que ele já estava instalado. Depois de tentar reinstalar com --force-reinstall
tudo está funcionando bem.
Obrigado. O último lançamento do Ubuntu aconteceu em um ponto onde eu ainda estava trabalhando em alguns problemas no Debian. Não trabalho diretamente no Ubuntu, então não tenho certeza dos detalhes.
Fico feliz que reinstalar tenha resolvido seu problema.
@kitterma note que ele o reinstalou com pip, note apt-get ... então per se isso ainda está quebrado no nível do Debian.
Obrigado. Perdi isso. Não testei no Ubuntu. Mas funciona no Debian.
Qual é a sua versão do virtualenv? Nota: virtualenv 20.0.24 refatorou a semente do módulo de detalhes de implementação interna ... então o patch do Debian provavelmente está quebrado, a menos que você conserte isso desde então.
Vou verificar e ter certeza quando estiver na frente de um computador novamente.
Nota: virtualenv 20.0.24 refatorou a semente do módulo de detalhes de implementação interna ... então o patch do Debian provavelmente está quebrado, a menos que você conserte isso desde então.
O Ubuntu 20.04 tem a versão 20.0.17.
O rastreamento no problema aponta para /home/florian/.local/lib/python3.8/site-packages/virtualenv/
então estou supondo que @ make-ing instalou 2.0.24 por meio de pip, e essa instalação foi de alguma forma interrompida. Isso seria antes do módulo Ubuntu virtualenv
em sys.path
.
Nossas máquinas pareciam ter versões do debian e versões do pip instaladas .. mas mesmo depois de remover a versão do debian eu não consegui fazer isso funcionar com a versão mais recente (20.0.25) do pip. Tudo funciona com ...
sudo pip3 install virtualenv==20.0.23
@gaborbernat Eu não empacotei 2.0.24 ainda, então qualquer coisa 2.0.24 no Debian ou Ubuntu não está relacionado ao empacotamento da distro.
Portanto, conforme detalhado acima, apenas os usuários instalam o virtualenv tanto via pip quanto via apt ao mesmo tempo e o conflito entre os repositórios aciona isso. De alguma forma o Debian pode gerar algum erro em tais casos?
Eu encontrei esse problema no ubuntu bionic também ao instalar o virtualenv com pip (não apt-get). Fazer downgrade para 20.0.23 também resolveu no meu caso.
Também posso confirmar que o rebaixamento da versão para 20.0.23 resolve o problema da fossa focal.
Eu tenho o mesmo problema. Como fazer o downgrade?
@ruannyury pip uninstall virtualenv
então pip install virtualenv==20.0.23
Em todos esses casos, rebaixar não é a solução real. Isso pode corrigir o problema por enquanto, mas você obterá uma versão desatualizada do software. É melhor você descobrir por que você tem duas versões instaladas em paralelo e remover ambas, e então instalar a nova.
Como descobrir? perdão pelo inconveniente
Meu sistema operacional é Manjaro 20.0.3
pip desinstalar virtualenv, pip desinstalar virtualenv? (Faça duas vezes)
Na segunda vez:
`ERRO: Exceção:
Traceback (última chamada mais recente):
Arquivo "/usr/lib/python3.8/shutil.py", linha 788, em movimento
os.rename (src, real_dst)
OSError: [Errno 18] Link entre dispositivos inválido: '/ usr / bin / virtualenv' -> '/ tmp / pip-uninstall-mpsr19ya / virtualenv'
Durante o tratamento da exceção acima, outra exceção ocorreu:
Traceback (última chamada mais recente):
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", linha 186, em _main
status = self.run (opções, argumentos)
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/commands/uninstall.py", linha 78, em execução
uninstall_pathset = req.uninstall (
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_install.py", linha 687, na desinstalação
Uninstall_pathset.remove (auto_confirm, verbose)
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", linha 394, em remover
moveu.stash (caminho)
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/req/req_uninstall.py", linha 283, no stash
renomeia (caminho, novo_caminho)
Arquivo "/usr/lib/python3.8/site-packages/pip/_internal/utils/misc.py", linha 334, em renomeações
shutil.move (antigo, novo)
Arquivo "/usr/lib/python3.8/shutil.py", linha 803, em movimento
os.unlink (src)
PermissionError: [Errno 13] Permissão negada: '/ usr / bin / virtualenv'
`
Devo usar o sudo?
Talvez você tenha instalado com o instalador do sistema operacional, tente desinstalá-lo também?
Com o superusuário?
atualização: entendi.
Então, devo instalar novamente?
Lubuntu 20.04 Eu tive o mesmo problema. Resolvido revertendo para virtualenv == 20.0.23
Em todos esses casos, rebaixar não é a solução real. Isso pode corrigir o problema por enquanto, mas você obterá uma versão desatualizada do software. É melhor você descobrir por que você tem duas versões instaladas em paralelo e remover ambas, e então instalar a nova.
Comentários muito úteis
Nossas máquinas pareciam ter versões do debian e versões do pip instaladas .. mas mesmo depois de remover a versão do debian eu não consegui fazer isso funcionar com a versão mais recente (20.0.25) do pip. Tudo funciona com ...