robotjs npm windows install globally resulta em npm ERR! estranho




robotjs python (6)

1 e 2: significa que você não tem o jshint listado no arquivo package.json do seu projeto, mas que ele está instalado globalmente. Então não é um grande problema.

3: Para evitar este erro irrelevante , você pode executar ou re-executar a instalação com a opção --save . Isso atualizará automaticamente o arquivo package.json:

npm install -g jshint --save

Ou precisa atualizar manualmente o seu arquivo package.json com "dependencies": {...}

Eu sou novo para grunhir e npm. Então, estou experimentando um "exemplo de livro de receitas" no site " http://tech.pro/tutorial/1190/package-managers-an-introductory-guide-for-the-uninitiated-front-end-developer#front_end_developers ' . Você não deveria ter que procurar lá agora, mas achei que seria bom compartilhar o site. Até aí tudo bem, até a instalação global. (Ok, alguns erros que eu tive que descobrir, mas agora eu estou trabalhando npm).

Quando se trata de tentar instalar algo globalmente, fico preso.

O que eu fiz até agora para testar globalmente a instalação de algum pacote:

  1. Diretório de teste criado grunttest

  2. Dentro desse diretório:

    npm install -g jshint

Saída eu posso ver:

 npm http GET https://registry.npmjs.org/jshint
 npm http 304 https://registry.npmjs.org/jshint
 ...
 npm http 304 https://registry.npmjs.org/string_decoder
 C:\Program Files\nodejs\node_modules\npm\jshint -> C:\Program Files\nodejs\node_modules\npm\node_modules\jshinnt
 [email protected] C:\Program Files\nodejs\node_modules\npm\node_modules\jshint
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected]
 ├── [email protected] ([email protected], [email protected])
 ├── [email protected] ([email protected])
 └── [email protected] ([email protected], [email protected], [email protected], [email protected])

Acabei de perceber o 304, que deve ser ok, devido a apenas diz que o recurso não foi modificado desde a última instalação (alguns minutos antes).

Verificando se o jshint existe com:

`npm -global list`

Saída:

[email protected] C:\Program Files\nodejs\node_modules\npm
├── [email protected]
├── [email protected]
├─...
├──
├── [email protected]
├── [email protected]
├── [email protected]
├─┬ [email protected]
│ └── [email protected]
├─┬ [email protected] extraneous
│ ├─┬ [email protected]
│ │ └─┬ [email protected]
│ │   └── [email protected]
│ ├── [email protected]
│ ├── [email protected]
│ ├─┬ [email protected]
│ │ ├── [email protected]
│ │ ├── [email protected]
│ │ ├── [email protected]
│ │ └─┬ [email protected]
│ │   └─... ├── [email protected]
├── [email protected]
└── [email protected]

**npm ERR! extraneous: [email protected] C:\Program Files\nodejs\node_modules\npm\node_modules\jshint npm**

Questões:

  1. Por que recebo o npm ERR! estranho ...?
  2. O que isso significa?
  3. Como posso resolver esse problema?

Em formação:

Eu estou em um Windows 7, usando o cygwin como shell. tentar apenas o jshint ( jshint someTestfile.js ), claro, não funciona.

Obrigado antecipadamente, Meru


No meu caso, foi porque o nome do pacote em seu arquivo package.json não era o mesmo que o nome de dependência listado no package.json do módulo dependente. Meu erro, já que é um novo módulo que criei, mas difícil de identificar, já que o npm não dá nenhuma pista.

Isso aconteceu ao usar a sintaxe dependencies: { "my-module": "file:local-modules/mymodule" } , com um erro de digitação no nome "my-module".


Eu, meu caso, eu vi este 'npm ERR! mensagem estranha no meu terminal cygwin quando fiz um 'npm ls'. Eu pensei que isso era algum tipo de configuração globalmente corrompida depois de ter muitos ajustes. Eu aprendo as seguintes observações aqui:

  • 'npm ls' fornece saídas diferentes, dependendo de qual é a sua localização atual da pasta.
  • O 'npm ls' tenta detectar a presença de uma pasta 'node_modules' no local atual da pasta e lista esses conteúdos. NÃO os globais!
  • Além disso, se a pasta atual contendo 'node_modules' também tiver um arquivo package.json contendo menos módulos listados aqui, o erro será mostrado.

Eu 'rm package.json' e 'npm ls' não mostra mais a mensagem de erro. Então eu digo, que sempre verifique a localização atual para a presença da pasta 'node_modules' e o arquivo package.json porque eles são priorizados primeiro na verificação e se estes estão faltando, a verificação continua para a pasta pai e assim por diante, e se você consertou muito um monte de trechos de código, então você pode ter se espalhado por várias pastas node_modules e package.json. Nada é realmente corrompido aqui, ao contrário daquelas experiências que temos ao fazer J2EE Java development / eclipse IDE ou durante os dias em que temos que usar o regedit para alterar as configurações no Windows.


Eu resolvi isso fazendo uma npm update na pasta do pacote pai que removeu alguns dos pacotes estranhos da lista e então fiz o npm uninstall <package> para os poucos remanescentes.

Parece ter funcionado, pois não estou recebendo erros depois de fazer isso.


npm ERR! extraneous npm ERR! extraneous significa que um pacote está instalado, mas não está listado no package.json do seu projeto.

Como você está listando pacotes que foram instalados globalmente, ele causará muitos erros irrelevantes que podem ser simplesmente ignorados porque a maioria das coisas instaladas globalmente não estará no package.json do seu projeto.


Eu resolvi combinando todas as respostas. No começo eu instalei o pacote globalmente.

npm install -g packagename --save

Como o npm instalou este pacote também globalmente, mas não o adicionou ao meu arquivo local package.json, tive que fazer algo a respeito.

Eu escolho, a solução para remover o local e depois instalá-lo globalmente.

npm uninstall packagename
npm install -g packagename

Dessa forma eu não tenho mais avisos e não estrague o arquivo package.json.







npm