pacote de aviso do MPN.json: sem repositório

instalei o Express.js com o seguinte comando:

sudo npm install -g express

recebo os seguintes avisos:

npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No readme data.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
npm WARN package.json [email protected] No repository field.
Sou novo nodo.js e Express.js. Por que tenho os avisos acima? Devo preocupar-me?

Author: swimfar, 2013-05-30

10 answers

É só uma verificação a partir de NPM v1. 2. 20, eles relatam isto como um aviso.

No entanto, não se preocupe, há muitos pacotes que ainda não têm o camporepositoryno seu package.json. O campo é utilizado para fins informativos.

No caso de seres um autor de pacotes, põe o repository no teu package.json, assim:

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

Leia mais sobre o repository campo, e veja o erro logado para mais informações informacao.


adicionalmente, como foi originalmente relatado por @dan_nl , Você pode definir private a chave na sua package.json.
Isto não só o impedirá de executar acidentalmente npm publish na sua aplicação, como também impedirá o MPN de imprimir avisos relativos a problemas package.json.

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

Você também pode marcar a aplicação como privada se você não planeja colocá-la em um repositório real.

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

Como o dan_ nl indicou, poderá adicionar um repositório falso privado no Pacote.json. Você nem precisa de nome e versão para ele:

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

actualização: esta funcionalidade não está documentada e pode não funcionar. Escolha a seguinte opção.

Melhor ainda: definir a bandeira private directamente. Desta forma, o npm também não pede um ficheiro README:
{
  "name": ...,
  "description": ...,
  "version": ...,
  "private": true
}
 46
Author: wortwart, 2018-09-03 19:22:07

Se está a receber isto do seu próprio package.json, Basta adicionar o campo repository a ele. (use a ligação para o seu repositório actual):

"repository" : { 
   "type" : "git",
   "url" : "https://github.com/npm/npm.git"
 }
 38
Author: Brendan Nee, 2017-06-29 20:07:29
Já correste? Esse comando faz-te passar por tudo...
 6
Author: achoukah, 2015-10-06 16:21:55

Em palavras simples - pacote.json do seu projecto não tem propriedade do repositório você deve ter que adicioná-lo,

E você tem que adicionar repositório no seu pacote.json como abaixo

enter image description here

E deixa-me explicar de acordo com o teu cenário.

Você deve ter que adicionar um campo de repositório algo como abaixo

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

Se não quiser indicar um repositório, poderá adicionar as seguintes linhas ao ficheiro package.json:

"description":"",
"version":"0.0.1",
"private":true,
Isso funcionou comigo.
Ao adicionar private, não precisa de se ligar a um acordo de recompra.
 5
Author: Rubin bhandari, 2018-05-23 17:52:43

Isto irá ajudar-vos a encontrar os vossos próprios detalhes correctos, usem

npm ls dist-tag

Isto irá então mostrar a informação correcta para que não adivinhe a localização do ficheiro de Versão etc

Aprecie:)

 4
Author: Ian Croasdell, 2016-11-26 10:55:10

Sim, provavelmente você pode re / criar um incluindo -f no final do seu comando

 2
Author: Jsalim, 2016-04-27 05:12:20

Para evitar avisos como:

npm WARN [email protected] No repository field.

Tem de definir o repositório no seu pacote de projecto.json. No caso em que você está desenvolvendo sem publicação no repositório, você pode definir "private": true em pacote.json

Exemplo:

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

Documentação do MPN sobre isto: https://docs.npmjs.com/files/package.json

 1
Author: Alex, 2018-09-24 06:45:36