5

无论我尝试什么,每次我尝试安装 polymer-cli 时,总是会出现 PERMISSION_DENIED 错误。

bradley@gurulaptop:~$ sudo npm -g install polymer-cli
npm WARN deprecated bower@1.8.0: ..psst! While Bower is maintained, we recommend Yarn and Webpack for *new* front-end projects! Yarn's advantage is security and reliability, and Webpack's is support for both CommonJS and AMD projects. Currently there's no migration path but we hope you'll help us figure out one.
npm WARN deprecated @types/assert@0.0.29: See https://github.com/DefinitelyTyped/DefinitelyTyped/issues/12826
/usr/bin/polymer -> /usr/lib/node_modules/polymer-cli/bin/polymer.js

> wd@1.2.0 install /usr/lib/node_modules/polymer-cli/node_modules/wd
> node scripts/build-browser-scripts

/usr/lib/node_modules/polymer-cli/node_modules/mkdirp/index.js:90
                    throw err0;
                    ^

Error: EACCES: permission denied, mkdir '/usr/lib/node_modules/polymer-cli/node_modules/wd/build'
    at Object.fs.mkdirSync (fs.js:877:18)
    at sync (/usr/lib/node_modules/polymer-cli/node_modules/mkdirp/index.js:71:13)
    at Object.<anonymous> (/usr/lib/node_modules/polymer-cli/node_modules/wd/scripts/build-browser-scripts.js:6:1)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Function.Module.runMain (module.js:605:10)
    at startup (bootstrap_node.js:158:16)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! wd@1.2.0 install: `node scripts/build-browser-scripts`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the wd@1.2.0 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/bradley/.npm/_logs/2017-06-06T13_10_23_400Z-debug.log

我该如何解决这个问题?

4

7 回答 7

9

我遇到了同样的问题并遵循@Tim Lundqvist的回答并通过以下方式解决:

步骤 1:在 home 中创建一个隐藏文件夹。命令

$ cd ~
$ mkdir .polymer-patch
$ cd .polymer-patch
$ npm install polymer-cli

第 2 步:创建符号链接以使其可执行

$ sudo ln -s "$(readlink -f ~/.polymer-patch/node_modules/.bin/wd)" /usr/bin/wd
$ sudo ln -s "$(readlink -f ~/.polymer-patch/node_modules/.bin/polymer)" /usr/bin/polymer
$ polymer

现在聚合物 CLI正在为我工​​作。


更新

此问题nodenpm版本相关,但以下命令效果很好

$ sudo npm install --unsafe-perm -g polymer-cli
于 2017-08-02T06:41:20.693 回答
2

以 root 身份安装软件包似乎有问题wd。解决此问题的一种方法是执行非全局 npm 安装polymer-cli并使用本地 bin 路径。

$ cd ~
$ npm install polymer-cli
$ ~/node_modules/.bin/polymer --version
1.1.0

之后,您可以将所有依赖项复制到可执行文件/usr/lib/node_modules/usr/bin/或者创建指向可执行文件的符号链接(这对于单用户系统可能更容易)。

$ sudo ln -s "$(readlink -f ~/node_modules/.bin/wd)" /usr/bin/wd
$ sudo ln -s "$(readlink -f ~/node_modules/.bin/polymer)" /usr/bin/polymer

当路径/usr/bin/polymer存在时,您应该能够polymer按预期使用该命令。

于 2017-06-08T00:15:29.950 回答
2

我正在运行 Xubuntu,这行得通

sudo npm install -g polymer-cli --unsafe-perm=true --allow-root

于 2018-05-25T21:10:09.610 回答
1

我让自己处于同样的境地。我无法安装或更新到最新的 polymer-cli 版本 (1.2.0)。前两个答案根本没有帮助我。我的解决方案是降级 npm。我已经安装了:

node -v: v7.x.x
npm  -v: v5.x.x

这才是真正的问题。通过以下方式降级到 npm 4.xx 后:

 sudo npm install -g npm@4.1.2

我能够通过以下方式安装最新的聚合物 CLI:

sudo npm install -g polymer-cli
于 2017-06-24T13:38:58.427 回答
0

也许您还需要以前卸载旧的 wd 和 polymer-cli 未完成安装:

sudo npm uninstall -g wd polymer-cli
sudo rm /usr/bin/polymer

现在有了蒂姆的提示和清理后的相同启动错误,这对我有用

于 2017-06-12T15:57:18.683 回答
0

解决问题:polymer-cli 全局安装错误

sudo npm install -g polymer-cli --unsafe-perm
于 2017-11-15T13:04:57.710 回答
0

我遇到了同样的问题,我尝试了不同的方法,但最终帮助我的是:

sudo npm install -g yarn

(考虑 Yarn 和 Webpack 或 Parce)

于 2018-07-31T07:39:47.547 回答