首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yuglify压缩器找不到通过npm安装的包中的二进制文件

Yuglify压缩器找不到通过npm安装的包中的二进制文件
EN

Stack Overflow用户
提问于 2013-01-29 01:44:55
回答 2查看 8K关注 0票数 17

我有一个全新的virtualenv环境和最新的django-pipleline。

带有闭包的JS压缩效果很好,但是使用Yuglify的CSS压缩失败了,原因是节点错误:

代码语言:javascript
复制
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage'
PIPELINE_JS_COMPRESSOR = 'pipeline.compressors.closure.ClosureCompressor'
PIPELINE_CSS_COMPRESSOR = 'pipeline.compressors.yuglify.YuglifyCompressor'

当我尝试收集静电时:

代码语言:javascript
复制
./manage.py collectstatic

上面写着:

代码语言:javascript
复制
pipeline.compressors.CompressorError: /usr/bin/env: node: No such file or directory

但我显然已经安装了yuglify,即使是全局的:

代码语言:javascript
复制
sudo npm -g install yuglify

/usr/local/bin/yuglify -> /usr/local/lib/node_modules/yuglify/bin/yuglify
yuglify@0.1.2 /usr/local/lib/node_modules/yuglify 
├── uglify-js@1.3.4
├── ycssmin@1.0.1
└── nopt@2.1.1

尝试在设置中设置biney也无济于事:

代码语言:javascript
复制
PIPELINE_YUGLIFY_BINARY = '/usr/local/bin/yuglify'

我仍然得到相同的错误。为什么现在npm会出现这样的问题?有什么需要我额外设置的吗?

或者,有没有办法用pip安装yuglify?

非常感谢,

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-29 02:31:19

在经历了3个小时的痛苦之后,我找到了解决方案。

这是因为一个错误的命名错误,如果你从包管理器(npm)安装,你的bin可能被称为nodejs,所以你只需要像这样符号链接它:

代码语言:javascript
复制
ln -s /usr/bin/nodejs /usr/bin/node

现在它起作用了。这不是在旧版本中发生的,它是新的。但至少它又开始起作用了。我希望这能对其他人有所帮助。:)

票数 25
EN

Stack Overflow用户

发布于 2019-03-27 21:35:37

在我的例子中,不知何故,uglify-jscssmin都没有安装。

所以我使用下面的命令重新安装了它们,然后它又开始工作了。

代码语言:javascript
复制
sudo npm install -g cssmin uglify-js
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14567960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档