在此同时发布问答,因为还没有关于此类错误的SO帖子,并且网络搜索上的其他链接导致未解决的gihub问题。这是我在虚拟python环境中更新的软件包:
(py36) $ pip install tornado -U
Collecting tornado
Downloading https://files.pythonhosted.org/packages/03/3f/5f89d99fca3c0100c8cede4f53f660b126d39e0d6a1e943e95cc3ed386fb/tornado-6.0.2.tar.gz (481kB)
100% |████████████████████████████████| 491kB 476kB/s
Building wheels for collected packages: tornado
Building wheel for tornado (setup.py) ... done
Stored in directory: /home/nikhil/.cache/pip/wheels/61/7e/7a/5e02e60dc329aef32ecf70e0425319ee7e2198c3a7cf98b4a2
Successfully built tornado
Installing collected packages: tornado
Found existing installation: tornado 5.1.1
Uninstalling tornado-5.1.1:
Successfully uninstalled tornado-5.1.1
Could not install packages due to an EnvironmentError: [Errno 39] Directory not empty: '/mnt/STUFF/py36/lib/python3.6/site-packages/~ornado'
那么如何解决这个问题?
答案 0 :(得分:0)
检查错误消息中突出显示的实际文件夹:
/mnt/STUFF/py36/lib/python3.6/site-packages/~ornado
我发现那里还有另外.fuse-hidden...
个文件,通常是我在运行时在文件夹中使用Geany(文本编辑器)时发现的,然后在保存文件后消失了然后刷新文件夹。不知何故,这里也创建了这样的文件,并且从未将其删除。请注意,这可能是我的操作系统的错误,而不是Geany的-IDK。无论如何,我自己删除了文件并运行了升级命令,这次没有错误。
答案 1 :(得分:0)
有一个类似的问题,其中使用wheel(python setup.py bdist_wheel
)为我自己的python软件包创建构建的分发存档会导致相同的错误消息。一旦我关闭了要打开的程序包的所有打开文件,问题就解决了(即,我关闭了文本编辑器)。
由于它是相同的错误和相似的解决方案,但是发生的情况非常不同,所以我创建了自己的堆栈溢出问题here