web-dev-qa-db-fra.com

Créez package.json à partir de package-lock.json

J'ai téléchargé un thème et il contient un fichier package-lock.json mais pas de fichier package.json. Existe-t-il un moyen de générer le package.json à partir du fichier package-lock.json. Comment installer les modules de noeud avec juste le fichier package-lock.json. Y-a-t-il un moyen de faire ça?

21
Sandeep kurien

Installez le dernier npm avec npm install -g npm

Courir npm init et répondez aux questions.

La commande ci-dessus va générer un package.json et inclure les packages existants répertoriés dans package-lock.json

11
VeeeneX

package-lock.json le fichier repose sur la présence d'un package.json , il n'est donc pas possible de récupérer package.json (heureux d'avoir tort).

Donc, une solution possible reste d'utiliser un module comme auto-install qui est capable de générer package.json à partir du projet dépendances de fichiers.

Tout d'abord, vous devez installer le module globalement npm install -g auto-install. Exécutez ensuite npm init et répondez aux exigences de base.

Ensuite, exécutez auto-install dans le répertoire racine de votre projet. Toutes les dépendances doivent se refléter dans le fichier package.json .

**

Ou installez les modules de noeud directement à partir de package-lock.json

**

Courir npm ci qui contourne le package.json d'un package pour installer des modules à partir du fichier de verrouillage d'un package.

Plus d'informations

4
Anand

Je pense que je l'ai compris.

Je ne pense pas npm init peut dessiner à partir de package-lock.json. Cependant, il ne semble tirer de ce qui est déjà dans votre / node_modules. Je pense que c'est pourquoi la solution de @Harry B fonctionne pour certains et pas du tout pour d'autres.

Par exemple, si vous venez de cloner votre projet qui contient package-lock.json, no package.json, et node_modules vide/inexistant, npm init ne créera aucune dépendance. Cependant, si vous exécutez npm install pkg1 pkg2 pkg3 ... puis exécutez npm init it créera les dépendances dans package.json.

0
Paul