未来可期wlkq 2024-05-23 21:02 采纳率: 0%
浏览 16

yarn 安装webpack的版本号会变化

问题一:修改node_modules/webpack/package.json版本为4.14.0,npm run dev时版本号又自动更改为 4.47.0

问题二:使用yarn 安装依赖,package.json的webpack的版本号是4.14.0,yarn之后node_modules/webpack的版本默认是4.47.0,为什么

  • 写回答

5条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-05-23 21:02
    关注

    引自免费微信小程序:皆我百晓生

    问题一和问题二都涉及到Yarn和Webpack版本管理的问题。这里我会分步骤为你解答。

    问题一:

    当你手动更改node_modules/webpack/package.json中的版本号后,运行npm run dev时,npm可能会根据你的项目中的package-lock.json(对于npm >=5)或npm-shrinkwrap.json(对于npm <5)文件重新安装Webpack。这些文件记录了项目的精确依赖关系,包括每个依赖的版本。当执行开发命令时,npm可能基于这些锁定文件重置Webpack到其指定的版本。

    解决方法:

    1. 如果你想保持Webpack在4.14.0版本,可以尝试删除package-lock.jsonnpm-shrinkwrap.json文件。
    2. 然后,再次运行npm installyarn确保只安装你想要的版本。
    3. 最后,在项目根目录创建一个.npmrc文件(如果还没有的话),并在其中添加以下行,以防止npm自动升级Webpack到其他版本:
      npm config set save-exact webpack true
      

    问题二:

    对于Yarn的情况,它通常会遵循package.json中的版本范围(例如,^、~等)。即使你在package.json中指定了特定版本,Yarn也会选择满足这个范围的最新稳定版本。

    解决方法:

    1. package.jsondependencies部分,将Webpack的版本明确指定为精确版本,例如:
      "dependencies": {
        "webpack": "4.14.0"
      }
      
    2. 删除yarn.lock文件。
    3. 运行yarn install,这应该会安装你指定的4.14.0版本的Webpack。

    这样,无论你使用npm还是Yarn,都应该能保证Webpack的版本不会自动更新。如果你遇到任何问题,请随时告诉我。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月23日

悬赏问题

  • ¥15 Windows Script Host 无法找到脚本文件"C:\ProgramData\Player800\Cotrl.vbs”
  • ¥15 matlab自定义损失函数
  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图