Npm安装找不到模块’semver’

2020/10/16 20:21 · javascript ·  · 0评论

我不能npm install在NodeJS中使用命令提示符。我在运行时遇到这些错误npm install

module.js:339
    throw err;
    ^
Error: Cannot find module 'semver'
    at Function.Module._resolveFilename (module.js:337:15)
    at Function.Module._load (module.js:287:25)
    at Module.require (module.js:366:17)
    at require (module.js:385:17)
    at Object.<anonymous> (C:\Users\admin\AppData\Roaming\npm\node_modules\npm\l
ib\config\defaults.js:6:14)
    at Module._compile (module.js:435:26)
    at Object.Module._extensions..js (module.js:442:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:311:12)
    at Module.require (module.js:366:17)

我有同样的错误。npm uninstall npm -grm -rf node_modules对我没有帮助,因为当我尝试时,我得到了Error: Cannot find module 'semver'但是我通过以下步骤解决了我的问题(这将删除您可能正在使用的其他全局模块):

  • sudo rm -rf /usr/local/lib/node_modules
  • sudo rm -rf ~/.npm
  • brew uninstall --force node
  • brew install node

希望这对遇到类似问题的人有所帮助。

我在这里面临着同样的问题。

如果在运行后立即发生这种情况,请brew install yarn尝试运行yarn global add npm运行-已修复!

在MS Windows上,解决方案是删除%APPDATA%\npm并重新安装node

brew install yarn昨天跑步后,我也有这个至少到那时为止一切都很好。

我运行rm -rf node_modules并尝试重新安装,但是没有npm命令在起作用。

最后,我采取了相当简单的步骤,即通过Mac OS X的官方Node安装程序重新安装Node。

https://nodejs.org/en/download/

现在一切都很好。刚回到目录,运行npm install就可以了。

Arch Linux上,我的诀窍是:

sudo pacman -Rs npm
sudo pacman -S npm

刚刚在Arch Linux 4.13.3上遇到了这个问题,我只需重新安装即可解决此问题semver

pacman -S semver

实际上,它是参考以前存储的模块。

解决方案:删除nodejs安装目录中的npm-cache / npm文件夹。在Windows中,它位于C:/ User / Username / Appdata / Roaming / npm(或npm_cache)中。并尝试再次安装。

在任何操作系统中都要做相同的事情。

在macOS(10.13.6)上,执行以下命令时

npm install -g react-native-cli

我得到这个错误

Error: Cannot find module 'semver'
    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/local/lib/node_modules/npm/lib/utils/unsupported.js:2: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)

执行命令后错误得到解决

yarn global add npm

由@Ashoor提出

对我而言,这是在全球安装纱线之后发生的。要解决此问题,请使用yarn和done安装npm。

yarn global add npm

在Windows上,再次下载Node的MSI并执行“修复”对我来说有效。

如果您在Linux服务器中,请退出服务器并重新ssh

我有同样的问题,但这是由package-lock.json文件损坏引起的

删除package-lock.jsonnpm install重新运行对我来说已经解决了。

当我npm install使用较低版本的节点运行时遇到这个问题然后,当我升级到最新版本的node并运行时gulp,它显示了此错误。

要解决,删除了node_modules并重新运行npm install然后gulp跑得很好。

就我而言,在macOS上,我通过从https://nodejs.org/en/download/安装了最新的Node和npm版本来解决此问题。

只需删除/ node_modules文件夹,然后重试。;)

您可以使用npm rm将其删除。

您也可以在GitHub上检查此问题要更详细地了解内容,请尝试遵循以下步骤

解除安装

所以遗憾地看到你去。

sudonpm uninstall npm -g或者,如果失败,

sudo make uninstall更严重的卸载

通常,以上说明就足够了。这将删除npm,但保留所有已安装的内容。

如果要删除已安装的所有软件包,则可以使用npm ls命令找到它们,然后使用npm rm删除它们。

要删除npm 0.x留下的碎片,可以使用随附的clean-old.sh脚本文件。您可以像这样方便地运行它:

npm Explore npm -g-sh脚本/clean-old.sh npm使用两个配置文件,一个用于每个用户的配置,另一个用于全局(每个用户)的配置。您可以通过以下方式查看它们:

npm config get userconfig#默认为〜/ .npmrc npm config get globalconfig#默认为/ usr / local / etc / npmrc卸载npm不会默认删除配置文件。如果您希望它们消失,则必须手动将其删除。请注意,这意味着以后的npm安装将不会记住您选择的设置。

我终于想通了!是的,您必须卸载/删除所有文件并重新安装。但是,在卸载过程中,某些文件路径太长而无法删除。Node中的文件路径太长,可能无法删除它们。您必须重命名文件路径。

卸载Node之后,使用命令提示符,导航到... \ Appdata \ roaming \(使用错误消息中的路径)。尝试使用del npm删除文件夹。然后,如果不允许您删除文件夹,请在下一条错误消息中将文件路径中的文件夹重命名为“ a”或简称。您可能必须对路径上的多个文件夹执行此操作。然后,您应该可以删除!然后重新安装节点,它应该可以工作。

只要确保semver已安装:npm install -g semver

这对我在Ubuntu(最新版本为2020年10月)上有效

我必须首先从bash源获取代码:

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

这获得了最新版本的node,该节点更新了我的库并摆脱了'semver'错误。

就我而言,只需重新运行即可brew install yarn解决问题。

brew在MacOs Sierra 10.12.6上安装纱线后,我也遇到了同样的麻烦。(并且第一次尝试安装是在brew更新自我之后,出现消息“必须在Ruby 2.3下运行Homebrew!您正在运行2.0.0。(RuntimeError)。”因此,我重新运行它。)

所以我用n manager重新安装npm。

  • 通过带有空参数的“ n”命令切换到另一个节点版本(对于我来说是8.0)
  • 或通过“ n xxx”安装新版本,其中xxx为节点版本号(我需要6.9.1)
  • 通过“ n rm xxx”删除工作版本,其中xxx为节点版本号。如果需要使用sudo
  • 通过“ n xxx”安装工作版本,其中xxx为节点版本号。如果需要使用sudo
  • 切换到节点的工作版本。(请参阅第一步以供参考)

我认为麻烦可能是由于在情况下将节点安装在sudo下。

对于Mac用户,我尝试安装大量新节点版本并卸载其他版本。那没有解决。您必须先彻底清除所有安装。请遵循以下说明... 如何完全卸载Node.js,然后从头开始重新安装(Mac OS X)

然后下载最新版本的节点。

我在AWS Linux上安装时遇到了同样的问题。我必须使用安装它sudo因此,为了解决这个问题,我遵循了本文的步骤3(确保获取最新版本的node)

https://www.hostingadvice.com/how-to/update-node-js-latest-version/

wget https://nodejs.org/dist/vx.x.x/node-vx.x.x-linux-x64.tar.xz
tar -C /home/aUser/node --strip-components 1 -xJf node-vx.x.x-linux.x64.tar.xz

但是将其安装到用户的主目录/home/aUser/node然后将该路径添加到我的PATH中。

export PATH=/home/aUser/node/bin:$PATH

在那之后,我能够做到npm install没有任何问题。

在更高版本的cli上运行项目时,我遇到了这个问题。要解决此问题,您可以简单地注释掉@ angular-devkit / build-angular模块,然后再次通过重新安装它

npm install @ angular-devkit / build-angular --save

对我来说,这是在我的项目中从gulp 3升级到gulp 4时发生的。因此,当我运行“ gulp watch”命令时,它抛出了同样的错误。

与我全局安装的gulp相比,这可能是由于版本不匹配所致。

因此,用“ -g”全局标志升级gulp会有所帮助,否则我将在下面关注

但是,我在项目中使用了“ ./node_modules/.bin/gulp监视”。这样可以确保gulp所需的所有依赖项仅来自node_modules。

正如DeveloperReference.com上的onymous(?)所指出的那样,以下步骤在运行npm -install时为我解决了“找不到模块'semver'”的问题:

*“我按照以下步骤操作,它解决了我卸载Node.js的问题

  1. 删除以下文件夹的内容

    • C:\ Users \ {用户名} \ AppData \ Roaming \ npm-cache
    • C:\ Users \ {用户名\ \ AppData \ Roaming \ npm
  2. C:\ Program Files文件\随后的NodeJS再次从安装节点https://nodejs.org/en/ “*

https://html.developreference.com/article/12253101/Cannot+find+module+%27semver%27+When+installing+Npm

在Ubuntu上,如果你宁愿通过使用默认的仓库管理节点apt,最好同时安装nodejsnpm这样。

您正在使用的npm版本很可能semver在特定的地方期望与您已安装的Node JS版本不一致。如果仅存在的一个版本nodejs和的一个版本npm,并且都使用默认存储库安装了它们,那么这应该可以正常工作。

这是有关使用主要的Ubuntu存储库使Node和npm工作的最佳指导:

  1. sudo apt-get purge nodejs --auto-removesudo apt-get purge npm --auto-remove
  2. whereis node:一次删除一个节点的所有版本。重复此命令,直到该命令在之后返回空白node:
  3. sudo apt-get install nodejs
  4. node --version:应返回 ... no such file or directory
  5. nodejs --version:应该退货v1x.x.x这是所安装的版本aptNode JS网站上提供的最新版本可能不会那么新。
  6. sudo apt-get install npm
  7. npm --version:它将使用已nodejs安装的apt并且正常工作。

只需检查您的预安装脚本(如果有)。有时要限制的版本,node并且npm需要运行一个项目。

如果是这种情况,您需要semver通过以下方式手动安装npm install -g semver

我遇到了同样的问题,并通过升级Node版本修复了该问题

本文地址:http://javascript.askforanswer.com/npmanzhuangzhaobudaomokuaisemver.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!