Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 从package-lock.json创建package.json_Node.js_Webpack_Package.json_Package Lock.json - Fatal编程技术网

Node.js 从package-lock.json创建package.json

Node.js 从package-lock.json创建package.json,node.js,webpack,package.json,package-lock.json,Node.js,Webpack,Package.json,Package Lock.json,我下载了一个主题,它有一个package-lock.json文件,但没有package.json文件。 有没有办法从package-lock.json文件生成package.json。 如何仅使用package-lock.json文件安装节点模块。 有办法吗?使用npm安装-g npm 运行npm init并回答问题 上面的命令将生成一个package.json,并包括package lock.jsonpackage lock.json文件中列出的现有包。json文件依赖于package.jso

我下载了一个主题,它有一个package-lock.json文件,但没有package.json文件。 有没有办法从package-lock.json文件生成package.json。 如何仅使用package-lock.json文件安装节点模块。
有办法吗?

使用
npm安装-g npm

运行
npm init
并回答问题


上面的命令将生成一个
package.json
,并包括
package lock.json
package lock.json文件中列出的现有包。json文件依赖于package.json文件的存在,因此无法检索package.json(很高兴被证明是错误的)

因此,剩下的一个可能的解决方案是使用这样的模块,它能够从项目文件依赖项生成package.json

首先,您需要全局安装模块
npm install-g auto install
。然后运行
npminit
并回答基本要求

然后,在项目根目录中运行
auto install
。所有依赖项都应反映在package.json文件中

**

或者直接从package-lock.json安装节点模块 **

运行
npm ci
,绕过包的package.json,从包的锁文件安装模块


我想我已经明白了

我认为
npminit
不能从package-lock.json中提取。然而,它确实从您的/node\u模块中已有的内容中提取了。我相信这就是为什么@Harry B的解决方案对某些人有效,而对其他人则完全无效


例如,如果您刚刚克隆了包含package-lock.json、no-package.json和空/不存在的node_模块的项目,
npm init
将不会创建任何依赖项。但是,如果运行
npm install pkg1 pkg2 pkg3…
然后运行
npm init
它将在package.json中创建依赖项。

似乎可以工作。复制包锁定文件文本,点击按钮,将文本复制到一个新的package.json文件。

您是否尝试过
npm安装
?我尝试过,但没有找到package.json文件发现主题不正确,因为package.json是安装其他依赖项所必需的。。主题的url是什么?可能与我用最新的npm(
6.4.1
)尝试过的主题重复,但它不起作用。它只创建了一个
package.json
文件,没有列出任何依赖项。@Amade有趣的是,我能够用这个命令恢复我的包:/@majaff好吧,我不知道为什么(耸耸肩)npm
6.6.0
package.json
不包括
package lock.json
6.9.0中列出的现有软件包,并且它仍然不工作,npm ci也不工作-如果似乎忽略了此文件,那么此文件在ci中的用途是什么?
npm ci
总是告诉我“添加了0个软件包”和
自动安装
重写我的package-lock.json,安装2个随机软件包并在“Watchers initialized”处停止。。。已创建节点_模块文件夹,但仅使用这2个包。。。很高兴我有一个锁备份:(
npm ci
依赖于
package.json
,因此它不能仅用于
package lock.json
present这是一个完美的解释。我将一个项目克隆到本地,其中包括节点单元模块,但不包括package.json,因此我无法重建和部署。这是解决我的问题的完美方案。这是对这种情况的完美评论,但这与回答以下问题无关:
如何仅使用package-lock.json文件安装节点模块
这是一个完美的解决方案