找不到SLC命令

时间:2015-03-31 04:17:09

标签: node.js macos loopbackjs strongloop

我正在使用Mac OS X 10.10.2 node -v v0.12.1 npm -v 2.5.1 通过npm install -g strongloop安装strongloop软件包时,即使我通过
修复了权限,也只能使用sudo     $ sudo chown -R $USER /usr/local/bin     $ sudo chown -R $USER /usr/local/lib/node_modules 如果没有sudo,则会抛出EACCS错误http://pastebin.com/uJbjbXG3

/usr/local/bin/npm/node_modules/strongloop/bin/slc存在。 有什么想法吗?

4 个答案:

答案 0 :(得分:1)

根据错误消息的最后几行:

113 error error rolling back Error: EACCES, unlink '/Users/Simon/npm/bin/slc'
113 error error rolling back     at Error (native)
113 error error rolling back  { [Error: EACCES, unlink '/Users/Simon/npm/bin/slc'] errno: -13, code: 'EACCES', path: '/Users/Simon/npm/bin/slc' }

您可能已将npm配置为使用非标准前缀,因为它正在将strongloop安装到/Users/Simon/npm而不是/usr/local

根据您的问题描述,/usr/local/bin/npm是一个目录(或目录的符号链接)而不是文件,这是无用的。

我不确定你用什么方法来安装node和npm,但它似乎已经出错了。

至少,您应该sudo chown -R Simon ~/npm,这样您就可以再次写入$HOME内的目录和文件。

如果这是您第一次使用节点而您没有安装任何其他模块,您可能会发现使用nvm之类的东西更容易以不需要的方式安装节点和npm sudo

答案 1 :(得分:0)

我必须警告这是一个糟糕的解决方案,因为你不想在你的项目中拥有所有的strongloop框架我只是将这个答案用于解释目的。

您好(如果您不想进行全局安装)

我的问题有些类似,CLI给我发了同样的信息:

  

找不到SLC命令

但是我意识到我在本地安装了strongloop,我的意思是用以下命令安装了stronloop

npm install strongloop

也许您可以通过完整的路径找到slc executable

node node_modules/strongloop/bin/slc arc 

或者您希望以简单的方式完成工作,将以下行添加到package.json(在脚本部分内):

"slc": "node node_modules/strongloop/bin/slc"

然后,输入您的控制台:

npm run-script slc arc

答案 2 :(得分:0)

一些新的研究表明,自从IBM收购该公司以来,不再维护StrongLoop特定的工具(包括slc工具)。环回本身是积极维护的。

loopback-cli项目特别提到它提供了一个lb命令行工具,可以“取代”strongloop的“旧版slc工具”。

答案 3 :(得分:-1)

如对可能解决方案的回复中所述。这是我的解决方案 npm config set prefix /usr/local