我已经成功使用 django-pipeline 几个月了。现在我第一次在一个干净的系统上安装了 virtual-env。一切都已相应设置,所有 pip 安装都在我的环境中完成。
python manage.py collectstatic
现在我在收集静态文件时遇到错误,它说
File "/vc/cb-env/local/lib/python2.7/site-packages/pipeline/compressors/__init__.py", line 247, in execute_command
raise CompressorError(error)
pipeline.compressors.CompressorError: [warning] /usr/bin/yui-compressor: No java runtime was found
[warning] /usr/bin/yui-compressor: No JAVA_CMD set for run_java, falling back to JAVA_CMD = java
即使之前安装了 yui-compressor 和最新的 java:
sudo add-apt-repository ppa:webupd8team/java -y
sudo apt-get update
sudo apt-get install oracle-java7-installer -y
sudo apt-get install yui-compressor -y
看样子,因为我是root安装java的,所以我的环境好像没有找到。 我能做什么?
最佳答案
不是直接的解决方案,但经过一些研究并与 django-pipeline 的制造商交谈后,Yui-Compressor 似乎是 deprecated无论如何,并被 Yuglify 取代。
因此最好保持 django settings.py 原样并简单地安装 Yuglify。
sudo apt-get install npm
(switch your virtualenv's environment)
npm install yuglify
settings.py 只需要修改一行:
PIPELINE_YUI_BINARY = '/vc/{your-project-env}/site/{your-project}/node_modules/yuglify/bin/yuglify'
行之有效。
更新:
在最新的 django-pipeline
中,您不能再将 YUI 二进制文件设置为 Yuglify。
您已明确声明 yuglify 二进制文件。但除此之外没有任何改变:
PIPELINE_YUGLIFY_BINARY = "/vc/{yourproject-env}/node_modules/yuglify/bin/yuglify"
关于java - 如何在虚拟环境中使用 django-pipeline?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13139651/