paquet npm WARN.JSON: aucun champ de référentiel

J'ai installé Express.js avec la commande suivante:

sudo npm install -g express

Je reçois les avertissements suivants:

npm WARN package.json range-parser@0.0.4 No repository field.
npm WARN package.json fresh@0.1.0 No repository field.
npm WARN package.json methods@0.0.1 No repository field.
npm WARN package.json methods@0.0.1 No readme data.
npm WARN package.json cookie-signature@1.0.1 No repository field.
npm WARN package.json send@0.1.0 No repository field.
npm WARN package.json pause@0.0.1 No repository field.
npm WARN package.json bytes@0.2.0 No repository field.
npm WARN package.json github-url-from-git@1.1.1 No repository field.
npm WARN package.json assert-plus@0.1.2 No repository field.
npm WARN package.json ctype@0.5.2 No repository field.

Je suis nouveau sur Node.js et Express.js. Pourquoi ai-je les avertissements ci-dessus? Devrais-je m'inquiéter?

662
demandé sur swimfar 2013-05-30 08:18:43

10 réponses

C'est juste une vérification à partir de NPM v1.2.20, ils signalent cela comme un avertissement.

Cependant, ne vous inquiétez pas, il y a sooooooo beaucoup de paquets qui n'ont toujours pas le Champ repository dans leur package.json. Le champ est utilisé à des fins d'information.

Dans le cas où vous êtes un auteur de paquet, mettez le repository dans votre package.json, comme ceci:

"repository": {
  "type": "git",
  "url": "git://github.com/username/repository.git"
}

En savoir plus sur le repository et voir le bogue enregistré pour plus d'informations détail.


en Outre, comme initialement indiqué par @dan_nl, vous pouvez définir private clé dans votre package.json.
Cela vous empêchera non seulement d'exécuter accidentellement npm publish dans votre application, mais empêchera également NPM d'imprimer des avertissements concernant les problèmes package.json.

{
  "name": "my-super-amazing-app",
  "version": "1.0.0",
  "private": true
}
1054
répondu gustavohenke 2017-05-23 12:34:44

Vous pouvez également marquer l'application comme privée si vous ne prévoyez pas de la placer dans un référentiel réel.

{
  "name": "my-application",
  "version": "0.0.1",
  "private": true
}
356
répondu dan_nl 2014-04-29 03:38:58

Comme dan_nl l'a déclaré, Vous pouvez ajouter un faux dépôt privé dans le package.json. Vous n'avez même pas besoin de nom et de version pour cela:

{
  ...,
  "repository": {
    "private": true
  }
}

Mise à jour: cette fonctionnalité n'est pas documentée et peut ne pas fonctionner. Choisissez l'option suivante.

Mieux encore: définissez le drapeau private directement. De cette façon, npm ne demande pas non plus de fichier README:

{
  "name": ...,
  "description": ...,
  "version": ...,
  "private": true
}
46
répondu wortwart 2018-09-03 19:22:07

Si vous obtenez ceci de votre propre package.json, Ajoutez simplement le Champ repository. (utilisez le lien vers votre référentiel):

"repository" : { 
   "type" : "git",
   "url" : "https://github.com/npm/npm.git"
 }
38
répondu Brendan Nee 2017-06-29 20:07:29

Avez-vous couru npm init? Cette commande vous parcourt tout...

6
répondu achoukah 2015-10-06 16:21:55

En mot Simple - paquet.json de votre projet n'a pas la propriété du référentiel vous devez avoir à l'ajouter,

Et vous devez ajouter un référentiel dans votre package.json comme ci-dessous

entrez la description de l'image ici

Et laissez-moi vous expliquer selon votre scénario

Vous devez ajouter un champ de référentiel comme ci-dessous

  "repository" : {     
     "type" : "git",
      "url" : "http://github.com/npm/express.git" 
   }
6
répondu ngCourse 2017-07-19 13:56:11

Si vous ne souhaitez pas spécifier de référentiel, vous pouvez ajouter les lignes suivantes au fichier package.json:

"description":"",
"version":"0.0.1",
"private":true,

Ça a marché pour moi.
En ajoutant private, vous n'avez pas besoin de lier à un repo.

5
répondu Rubin bhandari 2018-05-23 17:52:43

Cela vous aidera tous à trouver vos propres détails corrects utilisez

npm ls dist-tag

Cela affichera alors les informations correctes afin que vous ne deviniez pas l'emplacement du fichier de version etc

Profitez :)

4
répondu Ian Croasdell 2016-11-26 10:55:10

Oui, vous pouvez probablement en recréer un en incluant -f à la fin de votre commande

2
répondu Jsalim 2016-04-27 05:12:20

Pour éviter les avertissements comme:

npm WARN project.com@1.0.0 No repository field.

Vous devez définir le référentiel dans votre package de projet.json. Dans le cas où vous développez sans publication dans le référentiel, vous pouvez définir "private": true dans le package.json

Exemple:

{
  "name": "test.loc",
  "version": "1.0.0",
  "private": true,
  ...
  "license": "ISC"
}

MNP de la documentation à ce sujet: https://docs.npmjs.com/files/package.json

1
répondu Alex 2018-09-24 06:45:36