web-dev-qa-db-ja.com

package-lock.jsonからpackage.jsonを作成します

テーマをダウンロードしましたが、package-lock.jsonファイルがありますが、package.jsonファイルはありません。 package-lock.jsonファイルからpackage.jsonを生成する方法はありますか。 package-lock.jsonファイルだけでノードモジュールをインストールする方法を教えてください。それを行う方法はありますか?

21
Sandeep kurien

npm install -g npmで最新のnpmをインストールします

npm initを実行し、質問に答えます。

上記のコマンドはpackage.jsonを生成し、package-lock.jsonにリストされている既存のパッケージを含めます

11
VeeeneX

package-lock.jsonファイルはpackage.jsonファイルの存在に依存しているため、取得することはできませんpackage.json(間違っていることが証明されてうれしいです)。

したがって、考えられる解決策は、プロジェクトファイルの依存関係からpackage.jsonを生成できる auto-install のようなモジュールを使用することです。

最初に、モジュールをグローバルにインストールする必要がありますnpm install -g auto-install。次にnpm initを実行し、基本的な要件に答えます。

次に、プロジェクトのルートディレクトリでauto-installを実行します。すべての依存関係はpackage.jsonファイルに反映されるはずです。

**

または、package-lock.jsonからノードモジュールを直接インストールします

**

パッケージのpackage.jsonをバイパスしてパッケージのロックファイルからモジュールをインストールするnpm ciを実行します.

詳細

4
Anand

私はそれを理解したと思う。

npm init package-lock.jsonから描画できます。ただし、doesは、すでに/ node_modulesにあるものからプルするようです。これが、@ Harry Bのソリューションが一部で機能し、他ではまったく機能しない理由だと思います。

たとえば、package-lock.jsonを含み、package.jsonを含まず、node_modulesが空または存在しないプロジェクトを複製したばかりの場合、npm initは依存関係を作成しません。ただし、npm install pkg1 pkg2 pkg3 ...thenrun npm init itwillpackage.jsonに依存関係を作成します。

0
Paul