Tag: npm

如何写入全局安装的Node模块中的文件?

上下文 我正在开发一个作为CLI可执行文件安装的Node模块 。 因此,我打包使用NPM, build议 全球安装。 问题 但是,作为一个CLI程序,我想写一个日志文件。 这在本地安装中工作正常,但在全局安装中当然不太好:将程序放在/usr/local/lib/… ,NPM必须以sudo身份运行。 然后,当用户尝试运行该工具时,由于EACCES而失败:日志文件夹和文件无法创build。 采取的步骤 我成功地使用了postinstall脚本来创build日志目的地,同时仍然是su( mkdir log && touch log/execution.log ),但这些文件被nobody拥有,并且可能不会被该工具打开。 问题转移了一下,但结果是完全一样的。 题 有没有办法让NPM模块有权在自己的目录中写入? 更具体的问题 你会怎么build议我的情况? 我想到了以下解决scheme: 在执行CWD中写入日志文件。 这是丑陋的,并不安全,因为CWD也不可写。 将日志文件写入预设的可写日志文件,如~/.mytool/log ,但我不喜欢遍布用户的机器传播文件。 询问用户一个日志文件的目的地。 非常讨厌。 chmod 666全局日志文件。 不丑,但不安全。 处理这个问题有没有普遍的做法?

在NodeJS中排除NPM故障

当我执行下面的命令 npm install request 输出是: bash: npm: command not found

Winginx NPM全球包文件夹

我是node.js的初学者。 其实我的意图是安装在windows上开发node.js的可移植环境。 Wingnix是很好的候选人,因为它包括nginx,mysql和php。 我通过-g(全局标志)安装npm包,但是由于C:\ Winginx \ nodejs \ node_modules \ npm上的npmrc文件,它存储在我的$ {APPDATA} \ npm中 但是,正如在Winginx for node.js部分的文档中一样 如您所知,Node.js支持包(模块)。 全局包文件夹是\ winginx \ nodejs \ node_modules。 包括Node.js包pipe理器NPM,stream行的Node.js Web框架Express.js和模板引擎Jade。 这让我感到困惑,我如何安装额外的全局包并pipe理它们? Winginx是否提供了命令行界面来pipe理? 因为我将\ winginx \ nodejs设置为环境variables中的Path,以便通过Windows中的Bash / CMD进行访问。

问题在复合js“适配器没有定义”

我是新来的compoundJs,开发示例应用程序,而运行的应用程序,它显示我适配器没有定义。 它想要安装 npm install jugglingdb-mongoose 而我正在安装npm它显示 'jugglingdb-mongoose' is not in the npm registry. npm ERR! 404 You should bug the author to publish it 有没有什么办法可以安装这些npm。 如何解决这个问题。 任何人都可以帮忙

设置lintnode

所以,我试图设置lintnode与emacs工作,它似乎安装正常。 当我启动时,我没有在缓冲区或任何东西的错误。 但是,当我去写一些JS我没有得到任何的function。 所以我检查npm看是否所有的节点包都是最新的,他们不是,但即使我做了“npm update”并得到200个响应,版本仍然没有改变。 我正在运行Xubuntu的一些背景信息。 这里是我的emacs init文件的副本,以检查出你是否认为这可能是问题。 如果这太混乱,这是一个粘贴箱。 Emacs Init (add-to-list 'load-path "~/.emacs.d/auto-complete-1.3.1") ;Load the default configuration (require 'auto-complete-config) ;Make sure we can find the dictionaries (add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete-1.3.1/dict") ;Use dictionaries by default (setq-default ac-sources (add-to-list 'ac-sources 'ac-source-dictionary)) (global-auto-complete-mode t) ;Start auto completion after two characters of a word (setq ac-auto-start 2) ; case […]

在Meteor项目中使用自然的nodejs库

我需要使用自然( https://github.com/NaturalNode/natural ),一个Meteor项目中的nodejs库。 如果我在我的Meteor项目中使用npm自然安装,它会抛出一堆错误,因为某些方面是不兼容的(HTML格式的html文件头中的doctype HTML,例如meteor不怎么样)。 任何人都可以教我如何在meteor包中变成自然,或者告诉我如何解决这个问题? 谢谢,

如何强制NPM在不同的文件夹中查找已安装的软件包?

墨西哥Docpad安装。 现在Docpad位于/ usr / bin / docpad / usr / lib / node_modules中 而NPM查看/ usr / local / bin / docpad / usr / local / node_modules 我可以为npm指定适当的目录,它应该查找已安装的模块吗?

当包是依赖项时,npm安装失败

我正在构build一个npm包( libsbmlsim ),用于安装我将在以后使用服务器端的二进制文件。 当我运行npm install ,这个软件包就可以正常工作了,但是当我通过npm install libsbmlsim把它作为一个不同项目的依赖npm install libsbmlsim ,它无法find它所依赖的一个二进制文件( cmake ): /bin/sh: ../../node_modules/cmake/bin/cmake: No such file or directory make: *** [all] Error 127 npm ERR! libsbmlsim@0.0.2 install: `make` npm ERR! `sh "-c" "make"` failed with 2 npm ERR! npm ERR! Failed at the libsbmlsim@0.0.2 install script. 我怀疑它与我的设置有关,所以我会在这里解释一下。 libsbmlsim依赖于一些其他的二进制文件( cmake和libsbml ),我也将它们捆绑为npm包,这些包作为依赖关系或者npm install cmake等。我将每个包的package.json文件中的安装脚本设置为运行make ,我有一个相应的Makefile来下载二进制文件。 […]

如何遍历全局和本地npm包的package.json文件?

我想通过npm查看全局和本地安装的所有软件包的package.json文件,但不知道如何在全局范围内执行它? 我知道process.execPath会让我的目录到全球安装exectuables,但不知道该从哪里去。

npm将模块安装到当前目录中,而不仅仅是node_modules

我试图创build新的项目,并做到这一点。 >expression新的项目 > cd newproject > ls app.js package.json public / routes / views / > npm安装 // … > ls app.js commander / cookie-signature / formidable / methods / node_modules / public / routes / buffer-crc32 / connect / debug / fresh / mime / package.json qs / send / bytes / cookie / […]