【问题标题】:npm start gives weird error 8 with Unexpected token ILLEGALnpm start 给出奇怪的错误 8,带有 Unexpected token ILLEGAL
【发布时间】:2017-01-31 01:47:15
【问题描述】:

我在执行 $ npm start 时遇到奇怪的错误 8,输出如下

SyntaxError: Unexpected token ILLEGAL
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
npm ERR! weird error 8
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR! not ok code 0

npm -v 1.3.10

节点-v v0.10.25

我已经安装了 nodejs-legacy

$ which node
/usr/bin/node

$ which nodejs
/usr/bin/nodejs

有人可以帮忙吗。

我正在尝试在 ubuntu 14.04 上运行 react-jsonschema-form 或 word-finder (https://github.com/amirrajan/word-finder)

【问题讨论】:

  • 我现在收到以下错误:vagrant@oyin:~/word-finder-master$ npm install npm ERR!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误!解析 json npm 错误的注册表错误! Linux 3.19.0-25-通用 npm 错误! argv "/opt/node-v6.6.0/bin/node" "/opt/node/bin/npm" "install" npm 错误!节点 v6.6.0 npm 错误! npm v3.10.3 请有人帮我解决这个问题

标签: node.js npm-start


【解决方案1】:

您使用的是 Node 0.10 - 当前 LTS 版本是 4.5.0,当前版本是 6.6.0。考虑升级 Node,因为您使用的是非常过时的版本。 Node 0.10 于 2013 年 3 月发布,其维护期在一周后(2016 年 10 月 1 日)结束,之后将不再有任何更新,请参阅:https://github.com/nodejs/LTS#lts_schedule

根据github.com/mozilla-services/react-jsonschema-form中的package.json,所需的Node版本至少为6.x和npm 2.14.7。您正在尝试在 Node v0.10.25 和 npm 1.3.10 上运行它。你不应该期望它会起作用。

要安装现代版本的 Node,您可以从 https://nodejs.org/ 下载二进制版本,也可以从源代码构建它,例如使用类似于此的过程:

如果您想在/usr/local 中安装node 并作为/usr/local/bin/node 使用,您可以这样做:

# change dir to your home:
cd ~
# download the source:
curl -O https://nodejs.org/dist/v6.6.0/node-v6.6.0.tar.gz
# extract the archive:
tar xzvf node-v6.6.0.tar.gz
# go into the extracted dir:
cd node-v6.6.0
# configure for installation:
./configure --prefix=/usr/local
# build and test:
make && make test
# install:
sudo make install
# make sure you have /usr/local/bin in your $PATH before /usr/bin:
# add this to your .profile or .bashrc:
PATH="/usr/local/bin:$PATH"

或者,如果您希望能够同时安装几个版本,并带有指向要使用的默认版本的符号链接:

# change dir to your home:
cd ~
# download the source:
curl -O https://nodejs.org/dist/v6.6.0/node-v6.6.0.tar.gz
# extract the archive:
tar xzvf node-v6.6.0.tar.gz
# go into the extracted dir:
cd node-v6.6.0
# configure for installation:
./configure --prefix=/opt/node-v6.6.0
# build and test:
make && make test
# install:
sudo make install
# make a symlink to that version:
sudo ln -svf /opt/node-v6.6.0 /opt/node
# make sure you have /opt/node/bin in your $PATH before /usr/bin
# add this to your .profile or .bashrc:
PATH="/opt/node/bin:$PATH"

请参阅this answer 了解更多信息。

【讨论】:

  • 感谢@rsp 我已将 npm 版本升级到 3.10.8 但我不确定如何将节点版本升级到最新版本。请提出建议。
  • @OyindrilaBhattacharjee 在我的回答中,我已经展示了如何升级到 Node 版本 6.6.0。
  • 抱歉回复晚了。是的,我根据你给出的步骤升级了 node 和 npm。当我在做 npm start 我得到以下信息: vagrant@oyin:~/react-jsonschema-form-master/react-jsonschema-form-master$ npm start > react-jsonschema-form@0.40.0 start /home/ vagrant/react-jsonschema-form-master/react-jsonschema-form-master > node devServer.js 监听localhost:8080 webpack 在 42337ms 内构建 6094a1c841ed9c4e08a0 你能帮我如何检查输出作为一个表单,因为我很新到节点
猜你喜欢
  • 2021-06-23
  • 2015-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多