【问题标题】:Error setting up a virtualenv with jython 2.7b3使用 jython 2.7b3 设置 virtualenv 时出错
【发布时间】:2015-02-13 18:19:41
【问题描述】:

我正在尝试使用 jython 2.7b3 设置虚拟环境。我正在运行 Mac OS 10.8.5,以防万一。

我按照这里的建议使用 jython 和 easy_install 安装了 virtualenv (1.11.6):http://www.jython.org/jythonbook/en/1.0/appendixA.html

但是当我跑步时:

$ /usr/local/jython/jython2.7b3/bin/virtualenv jython-venv

我得到了输出:

Cannot find file /usr/local/jython/jython2.7b3/Include (bad symlink)
New jython executable in jython-venv/bin/jython
ERROR: The executable jython-venv/bin/jython is not functioning
ERROR: It thinks sys.prefix is u'/usr/local/jython/jython2.7b3' (should be  u'/..../jython-venv')
ERROR: virtualenv is not compatible with this system or executable

(其中/..../jython-venv 代表我创建的新虚拟环境的路径。)

当我运行 jython-venv/bin/jython 时,我得到一个正常的 jython 提示:

$ jython-venv/bin/jython
Jython 2.7b3 (default:e81256215fb0, Aug 4 2014, 02:39:51) 
[Java HotSpot(TM) 64-Bit Server VM (Oracle Corporation)] on java1.7.0_51
Type "help", "copyright", "credits" or "license" for more information.
>>> 

我错过了什么?为什么 virtualenv 认为可执行文件不起作用,即使它本身似乎运行正常?只是告诉它正确的sys.prefix 吗?如果是这样,我该怎么做?

非常感谢您的帮助...

【问题讨论】:

  • 这里有一个专业提示:避免使用 Jython。基本的快乐路径场景充满了错误。最糟糕的部分:开发团队完全了解他们的错误跟踪器,但提出了不稳定的解决方法或将矛头指向 3rd 方库,而不是修复它。 pipenvvirtualenv 等基本实用程序是开箱即用的(由于安装程序设置的环境变量!)。甚至交互式外壳也坏了(是的,从全新安装中运行普通的旧jython),因为它们使用了无法处理现代xterm-256color 设置的过时终端抽象。垃圾!!!

标签: virtualenv jython jython-2.7


【解决方案1】:

找到这里描述的问题和解决方案: http://seletz.github.io/blog/2012/04/06/jython-classpath-virtualenv/

显然 virtualenv 中有一个 bug 会在设置 JYTHON_HOME 时导致此问题,这是我的问题。

一旦使用 unset JYTHON_HOME 取消设置,virtualenv (几乎)按预期工作。

$ echo $JYTHON_HOME
/usr/local/jython/jython2.7b3
$ unset JYTHON_HOME
$ echo $JYTHON_HOME

我按预期说“几乎”,因为安装 pip 仍然存在问题。幸运的是,这里描述了这个问题及其解决方案:https://gist.github.com/skyl/ea2ab1c62a547e381411

【讨论】:

  • 我没有设置JYTHON_HOME,仍然遇到问题。有什么线索吗?
  • @AbhishekGupta 避免使用 Jython,这是一个糟糕的项目,有大量无法修复的错误。
猜你喜欢
  • 2015-07-06
  • 1970-01-01
  • 2012-02-05
  • 1970-01-01
  • 2023-03-23
  • 2015-08-10
  • 2017-11-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多