找不到 SLC 命令

SLC Command not found

我正在使用 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 存在。 有什么想法吗?

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

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.

中的目录和文件

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

我必须警告,这是一个糟糕的解决方案,因为您不希望在您的项目中拥有所有 strongloop 框架我只是出于解释目的而提出这个答案。

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

我的问题有些相似,CLI 向我抛出相同的消息:

SLC command not found

但是我意识到我在本地安装了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

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

一些新的研究表明,自从该公司被 IBM 收购后,StrongLoop 特定的工具(包括 slc 工具)就不再维护了。 Loopback 本身得到积极维护。

loopback-cli 项目特别提到它提供了一个 lb 命令行工具,"supersedes" strongloop 的 "older slc tool."