0

0

如何正确重建缺失的 node_modules 目录

心靈之曲

心靈之曲

发布时间:2026-01-13 22:07:01

|

290人浏览过

|

来源于php中文网

原创

如何正确重建缺失的 node_modules 目录

删除 node_modules 后执行 npm install 却未生成该目录,通常是因为 package.json 中缺少 dependencies 声明或执行路径错误;本文将系统讲解排查步骤、正确安装方法及关键注意事项。

当你在项目中手动删除 node_modules(例如为清理后推送至 GitHub)并拉取代码重新安装时,若运行 npm install 后目录仍未生成,这并非 npm 失效,而是存在几个常见但易被忽略的前提条件未满足。

首要前提:确保当前终端位于项目根目录
在执行 npm install 前,请确认你正处于包含 package.json 的项目根目录下(例如 abamade/)。可通过以下命令验证:

pwd          # 查看当前路径
ls package.json  # 确认文件存在

若 package.json 不在当前目录,npm 将默认在用户主目录或全局范围安装,自然不会创建项目级 node_modules。

核心条件:package.json 中必须声明依赖项
npm install 只会根据 package.json 的 dependencies(和 devDependencies)字段安装包。如果该文件中 dependencies 为空或根本不存在(例如仅含 name 和 version),则 npm 会提示 “up to date, audited 3 packages”,实则无包可装——这也是你看到“0 vulnerabilities”却无 node_modules 的根本原因。

请检查你的 package.json 是否类似如下结构:

{
  "name": "abamade",
  "version": "1.0.0",
  "dependencies": {
    "express": "^4.18.2",
    "axios": "^1.6.0"
  },
  "devDependencies": {
    "eslint": "^8.56.0"
  }
}

⚠️ 若 dependencies 字段缺失或为空对象 {},npm install 将不会下载任何生产依赖,node_modules 自然不会生成。

Linfo.ai
Linfo.ai

Linfo AI 是一款AI驱动的 Chrome 扩展程序,可以将网页文章、行业报告、YouTube 视频和 PDF 文档转换为结构化摘要。

下载

? 快速修复步骤:

  1. 编辑 package.json,补全所需依赖(可参考原项目 package-lock.json 或历史提交);
  2. 运行 npm install(无需加 --global,该标志已弃用,警告 npm WARN config global ... Use --location=global 即源于此);
  3. 验证结果:ls -la node_modules/ 应列出子目录,且 npm list --depth=0 显示已安装的顶层包。

? 额外建议:

  • ✅ 推荐使用 npm ci 替代 npm install 进行 CI/CD 或团队协作环境下的安装——它严格按 package-lock.json 安装,更快更确定;
  • ❌ 切勿将 node_modules 提交至 Git(应在 .gitignore 中包含 node_modules/);
  • ? 若曾误删 package-lock.json,建议先 git checkout -- package-lock.json 恢复,再运行 npm install 以保证依赖版本一致性。

总结:node_modules 是否生成,完全取决于 package.json 的依赖声明与当前执行路径。一次准确的 npm install,始于一份完整的清单,成于正确的上下文。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

411

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

532

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

309

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

74

2025.09.10

location.assign
location.assign

在前端开发中,我们经常需要使用JavaScript来控制页面的跳转和数据的传递。location.assign就是JavaScript中常用的一个跳转方法。通过location.assign,我们可以在当前窗口或者iframe中加载一个新的URL地址,并且可以保存旧页面的历史记录。php中文网为大家带来了location.assign的相关知识、以及相关文章等内容,供大家免费下载使用。

224

2023.06.27

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

638

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

526

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

264

2023.07.24

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
WEB前端教程【HTML5+CSS3+JS】
WEB前端教程【HTML5+CSS3+JS】

共101课时 | 8.2万人学习

JS进阶与BootStrap学习
JS进阶与BootStrap学习

共39课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号