npm notice创建了一个lockfile作为package-lock.json。你应该提交这个文件

时间:2017-06-03 12:36:15

标签: json node.js git express

我一直试图用npm install express加载快递的骨架。它输出以下行:

  

npm notice创建了一个lockfile作为package-lock.json。你应该提交这个文件。

如何自动加载模板ejs和css引擎?

10 个答案:

答案 0 :(得分:16)

是。您应该将此文件添加到版本控制系统,即您应该提交它。

  

此文件旨在提交到源存储库

您可以详细了解它是什么/它做什么here

  对于npm修改node_modules树或package.json的任何操作,都会自动生成

package-lock.json。它描述了生成的确切树,以便后续安装能够生成相同的树,无论中间依赖性更新如何。

答案 1 :(得分:1)

您可以更新现有的package-lock.json文件,而不用创建一个新文件。只需将版本号更改为其他版本号即可。

{ "name": "theme","version": "1.0.1", "description": "theme description"}

答案 2 :(得分:0)

还应该注意,关于package-lock.json的一个关键细节是它无法发布,并且如果在顶级软件包之外的任何地方都将被忽略。它与npm-shrinkwrap.json(5)共享一种格式,该格式本质上是相同的文件,但是可以发布。 不建议这样做,除非部署CLI工具或使用发布过程来生产生产软件包。

如果package-lock.json和npm-shrinkwrap.json都存在于包的根目录中,则package-lock.json将被完全忽略。

答案 3 :(得分:0)

是的,为您的项目使用版本控制系统是明智的。 无论如何,针对您的安装警告问题,您可以尝试从根项目文件夹开始而不是从其外部启动npm install命令,因此安装步骤将仅更新现有的package-lock.json文件,而不创建一个新文件。 希望这会有所帮助。

答案 4 :(得分:0)

检查C:\Windows\system32上的 package-lock.json 文件。

如果不存在,请以管理员身份运行cmd并执行以下命令:

Set EXPO_DEBUG=ture
npm config set package-lock false
npm install

希望它现在可以正常工作;-)

答案 5 :(得分:0)

是的,因为它锁定了您在应用程序中使用的每个软件包的版本,所以当您运行npm install时,它将在您的node_modules文件夹中安装完全相同的版本。这很重要,因为假设您在应用程序中使用引导程序3,并且如果您的项目中没有package-lock.json文件,那么npm install将安装引导程序4,这是最新的引导程序,整个应用程序ui都将到期版本不匹配。

答案 6 :(得分:0)

通过更改package.json文件中的版本并更改软件包名称来解决此问题,最后删除了package-lock.json文件

答案 7 :(得分:0)

如果这是从Dockerfile输出的,那么您就不需要/不需要提交它。

但是,您将要想要标记基本图像和任何其他贡献图像/应用程序。

例如

FROM node:12.18.1

答案 8 :(得分:0)

我遇到了同样的问题,解决方案是重命名 package.json 中的 name 字段(删除空格) enter image description here

答案 9 :(得分:0)

只需按照以下步骤解决此问题。

  1. 从其他项目中复制并粘贴 package.jsonpackage-lock.json,稍后您可以更改/删除不需要的依赖项您的项目。
  2. 现在运行 npm install 命令。

瞧!!,你明白了。