首页 > 解决方案 > npm 不安装任何包无法读取 null 的属性“版本”

问题描述

我正在使用节点 v16.7.0 和 npm v7.20.3。我买了新的笔记本电脑(w10)并安装了节点,但从那以后(差不多一周),我无法启动任何与节点相关的项目,因为我无法安装任何 npm 包。每当我尝试“npm install”时

npm install <package>

我得到错误:

npm ERR! Cannot read property 'version' of null

我深入研究了整个网络以找到解决方案,但我找不到。有人可以帮我解决这个问题吗这是我在 Stackoverflow 中的第一个问题。此外,如果我在 Ubuntu 或 WSL2(Linux 的 Web 子系统)上使用双启动,即使我从事 Web 开发无事可做,我在开发工具上的错误也会减少与内核。谢谢...

编辑:我在 Windows 的用户名文件夹中有空格和非英文字符,所以我尝试更改我的用户名和用户名文件夹,它解决了我的问题。(请注意,更改用户名不会反映到用户名文件夹,你必须为此设置额外的配置) .

标签: node.jsnpm

解决方案


该错误消息意味着 npm 正在尝试读取version文件夹文件的属性,package.json但没有找到该文件。

检查您的package.json文件夹中是否有文件,并查看该version属性的值是什么。

如果您需要package.json开箱即用地创建文件,请运行npm init并按照说明进行操作。有关更多信息,请查看有关npm init.

另外,请确保您已正确安装 Node。建议使用 Node 版本管理器来管理您的 Node 安装

此外,如果我在 Ubuntu 或 WSL2(Linux 的 Web 子系统)上使用双启动,即使我从事与内核无关的 Web 开发,开发工具的错误也会减少

是的,最好使用 Ubuntu 进行双重引导。虚拟机可能很慢,需要额外的配置来提高性能,而且 WSL 上报告了很多问题。

大多数开发工具在 Linux 上原生工作,因此在 Linux 上运行得更好。归根结底,这取决于您正在使用什么语言进行开发以及您正在为什么环境进行开发。

一般来说,Linux 将使您的开发体验变得不那么麻烦。有关这些工具的信息、教程和故障排除也更容易用于 Linux。

从 Windows 切换到 Linux 的最大好处之一是包管理和命令行界面。Linux 使运行命令变得简单直接,而 Windows 可能需要额外的配置、其他解决方法和中间步骤。


推荐阅读