在 运行 grunt 上找不到模块 'findup-sync'
Cannot find module 'findup-sync' on running grunt
我在以前构建的项目中工作。该项目是使用 Node 和 G运行t 构建的。
我在项目的根文件夹中有一个Gruntfile.js。
我在本地和全局安装了 g运行t,使用
npm i grunt
npm i -g grunt
之后,我在本地和全局安装了 g运行t-cli,使用
npm i grunt-cli
npm i -g grunt-cli
当我尝试 运行 任何 g运行t 命令(develop、init 等)时,出现错误
internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module 'findup-sync'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/usr/lib/nodejs/grunt-cli/bin/grunt:8:14)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
我在很多论坛和这里都搜索过,但我没有找到答案。
有人可以帮助我吗?
更新
在处理此错误超过 24 小时后,我通过以下步骤修复了它:
- 通过 apt 在 Ubuntu 中安装 node-g运行t-cli,如 CPBL 在他的评论中所说
apt install node-grunt-cli
在 OSX 上没有必要。
- 按照我在此 blog 上找到的步骤进行操作。但是,我还需要 运行 命令
grunt develop
作为 sudo,即使更改了许多文件夹的权限。
感谢 Pablo Lopes 让我走上正轨(请参阅他的问题,其中包含答案)。我通过以下方式解决了我的问题:
正在通过 apt 安装 node-grunt-cli:
sudo apt install node-grunt-cli
运行 用 sudo 发出咕噜声:
sudo grunt
这不是一个理想的修复,因为它需要在 运行 发出咕噜声时使用 sudo - 这不应该是必需的。
对我来说,通过 apt 安装是问题的原因。通过 npm npm install grunt -g
安装解决了这个问题。给定一个现有的来自 apt 的全局 grunt 安装,你可能需要添加 --force
来覆盖。
我在以前构建的项目中工作。该项目是使用 Node 和 G运行t 构建的。 我在项目的根文件夹中有一个Gruntfile.js。
我在本地和全局安装了 g运行t,使用
npm i grunt
npm i -g grunt
之后,我在本地和全局安装了 g运行t-cli,使用
npm i grunt-cli
npm i -g grunt-cli
当我尝试 运行 任何 g运行t 命令(develop、init 等)时,出现错误
internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module 'findup-sync'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (/usr/lib/nodejs/grunt-cli/bin/grunt:8:14)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
我在很多论坛和这里都搜索过,但我没有找到答案。 有人可以帮助我吗?
更新
在处理此错误超过 24 小时后,我通过以下步骤修复了它:
- 通过 apt 在 Ubuntu 中安装 node-g运行t-cli,如 CPBL 在他的评论中所说
apt install node-grunt-cli
在 OSX 上没有必要。
- 按照我在此 blog 上找到的步骤进行操作。但是,我还需要 运行 命令
grunt develop
作为 sudo,即使更改了许多文件夹的权限。
感谢 Pablo Lopes 让我走上正轨(请参阅他的问题,其中包含答案)。我通过以下方式解决了我的问题:
正在通过 apt 安装 node-grunt-cli:
sudo apt install node-grunt-cli
运行 用 sudo 发出咕噜声:
sudo grunt
这不是一个理想的修复,因为它需要在 运行 发出咕噜声时使用 sudo - 这不应该是必需的。
对我来说,通过 apt 安装是问题的原因。通过 npm npm install grunt -g
安装解决了这个问题。给定一个现有的来自 apt 的全局 grunt 安装,你可能需要添加 --force
来覆盖。