Nvm-windows: ERRO abra \settings.txt:

Criado em 21 nov. 2014  ·  57Comentários  ·  Fonte: coreybutler/nvm-windows

Após o processo de instalação, executei "npm" e ele diz:

ERRO abra \settings.txt: [...]

Comentários muito úteis

Eu tive o mesmo problema. https://github.com/coreybutler/nvm-windows/issues/23 O comentário de @colmsjo resolveu para mim.

Simplesmente remova %NVM_HOME% e NVM_SYMLINK das variáveis ​​de ambiente _user_.

Todos 57 comentários

O arquivo de configurações existe em seu diretório de instalação?

O diretório de instalação significa a pasta onde está o aplicativo instalado ou onde está o instalador?

Para onde vai o aplicativo instalado... o padrão para isso é C:\Users\<yourusername>\AppData\Roaming\nvm . Deve ser algo assim:

image

Os principais arquivos a serem procurados são elevate.cmd , elevate.vbs , nvm.exe e settings.txt , bem como nodejs.ico (que é apenas o ícone, ele não fornece nenhuma funcionalidade).

Se settings.txt não existir, provavelmente não foi criado durante o processo de instalação. O instalador deve fazer isso para você, mas a instalação manual não. Se você usou o instalador e não vê o arquivo settings.txt , provavelmente há um bug no instalador que eu estaria interessado em rastrear e corrigir.

O arquivo de configurações deve conter conteúdo semelhante a:

root: C:\Users\Corey\AppData\Roaming\nvm
path: C:\Program Files\nodejs

Olá, isso também aconteceu comigo. Depois que o instalador terminou, ele abriu o cmd.exe e o cmd.exe foi aberto com essa mensagem de erro.

settings.txt de fato existe na minha pasta de instalação.

Quando examino minha nova variável de caminho, ela tem isso no final: " [...meus caminhos anteriores...];%NVM_HOME%;%NVM_SYMLINK% "

Então, parece que possivelmente essas %variables% não estão sendo avaliadas em diretórios reais antes de anexá-las ao caminho de pesquisa durante o instalador? Quando adiciono manualmente os diretórios corretos ao meu caminho, parece funcionar, embora eu seja novo no node.js, então tenho muito pouca ideia do que estou falando ainda.

@bobbycircle - É possível que as variáveis ​​não estejam sendo avaliadas no momento certo... Vou ter que analisar isso. Eu não pensei nisso antes porque... bem, tem funcionado e eu não mudei essa parte do instalador. Vou investigar isso assim que puder.

Mesma coisa aqui. De acordo com @bobbycircle , ajustar manualmente minha variável PATH resolveu.

Eu encontrei o mesmo erro após a instalação. No Windows 8+, você precisa criar uma nova janela cmd para ver as variáveis ​​de ambiente %nvm_home% e %nvm_symlink% avaliadas. Esta é uma mudança do Windows 7 para o 8, onde um shell existente do Windows Explorer não pode criar um novo processo e ver as novas variáveis ​​de ambiente. Se você estiver iniciando o cmd.exe a partir do Explorer, você precisa primeiro fechar o Win Explorer e reiniciá-lo para ver as novas variáveis ​​Env.

@dan-sterling - Eu não encontrei isso com o Windows 8 (que é o que eu desenvolvi). É especificamente por isso que os atributos do usuário também são definidos, então o shell cmd será captado no caminho. No entanto, não deve importar - estou construindo um instalador totalmente novo para resolver esses problemas.

Deu o mesmo problema. Além disso, criar settings.txt nesse diretório não resolveu. Eu precisava criá-lo em ~

Eu tive o mesmo problema. https://github.com/coreybutler/nvm-windows/issues/23 O comentário de @colmsjo resolveu para mim.

Simplesmente remova %NVM_HOME% e NVM_SYMLINK das variáveis ​​de ambiente _user_.

Mesma questão aqui. Eu segui a solução do @queckezz , funciona.

Eu também tenho esse problema toda vez que o instalo, acho que iniciar o cmd.exe no final da instalação não é uma boa ideia, pois pode falhar com muita frequência, dando uma primeira impressão ruim da ferramenta.

Prefiro não iniciar o cmd.exe e pedir ao usuário que feche sua sessão do Windows, abra uma nova e tente nvm em uma janela de prompt de comando.

Além disso, se deparou com esse problema, ao executar o instalador 1.0.6. Windows 8, executei o instalador como administrador. file.exe não estava no meu caminho. A instalação do GnuWin32 também não resolveu o problema. O nó ainda não havia sido instalado.

Eu poderia usar para copiar settings.txt para c:\ .

A solução @bobbycircle funcionou para mim.

Eu encontrei esse problema também (Windows 8.1). Fechar e reiniciar o prompt de comando não ajudou (o processo ainda pode estar em execução - não foi verificado). Em um palpite, reiniciei o Windows. Problema resolvido: sem mexer com o instalador PATH vars. Dê uma chance antes de mudar qualquer coisa
@coreybutler - também pode ser uma boa proteção contra falhas para o instalador: acione uma reinicialização no final "para que suas alterações tenham efeito" para eliminar algumas das variações do ambiente do usuário.

Às vezes, ao ajustar variáveis ​​de ambiente, isso pode acontecer :+1:

  • Você não pressionou o botão "OK" na janela "Editar variável de ambiente"
    Sim. Isso pode parecer bobo, mas na verdade passei muito tempo, alterando vars e reiniciando o PowerShell, e nada estava acontecendo ... até que fechei esta janela! Clicar no botão "OK" é MUITO importante, se você fechar a janela ou cancelar, suas modificações serão descartadas. Depois é só recarregar seu termo.
  • Seu termo pode estar com defeito, tente outro.
    Se você estiver usando o Github para Windows e Git, poderá acabar com 3 termos (PowerShell, Git Shell, Git Bash). Cada termo pode ter seu próprio ambiente, e ajustar os valores não resolverá nada. Experimente o PowerShell ou cmd.exe (termos do Windows Vanilla) antes.

Acabei de encontrar isso no Windows 8 também.

execute seu terminal cmd como administrador

É possível que isso tenha falhado porque a instalação falhou .. por causa de um espaço na pasta User ? Isso ocorre no bug/questão #41, então talvez isso esteja acontecendo aqui também?

A solução @queckezz funcionou

A solução @queckezz funcionou. Obrigado

Eu tive esse problema.

O instalador foi executado com privilégios elevados (necessários para instalação).
A sessão cmd iniciada também é executada com privilégios elevados, mas se recusou a ver as configurações .txt

Reiniciar um cmd não administrador viu o settings.txt muito bem, e o nvm agora também funciona bem em uma sessão de administrador iniciada como administrador.

A solução @queckezz também funcionou para mim. Obrigado

A solução @queckezz funcionou +1

Eu tive o mesmo problema. O problema era que "C:\Program Files\nodejs" estava no meu caminho de usuário, logo antes das novas vars ;%NVM_HOME%;%NVM_SYMLINK%.

No meu caso (Windows 7 e Windows 8.1), esse fenômeno ocorre logo após a instalação.
Se eu reiniciar após a instalação, o nvm for windows funciona normalmente

+1 para @sanori e reinicialização após a correção da instalação

O problema é que PATH não foi atualizado corretamente, o que significa que no meu caso descobri que o valor PATH era ...";%NVM_HOME%;%NVM_SYMLINK% . Esses ... são as entradas existentes, mas as aspas duplas foram adicionadas antes do ponto e vírgula.

Uma vez que isso foi corrigido, PATH = ...;%NVM_HOME%;%NVM_SYMLINK% tudo funciona corretamente.
Você não precisa copiar settings.txt em C:, D: ou qualquer unidade que esteja usando ao executar a ferramenta nvm.

Eu também notei o %vars% no meu caminho, mas até então tinha revertido apenas para ter a versão ativa do Node instalada, então apenas os removi.

Eu não posso acreditar que eles (MicroSoft) não melhoraram o método de propriedades do sistema para modificar o caminho. Tenho certeza de que tem sido a mesma caixa de texto estreita desde os dias do XP.

Definir env vars no Windows funciona bem. Você pode até fazer isso no powershell:

[System.Environment]::SetEnvironmentVariable("MYVAR", "WHATEVER", "Machine")

Corrigi esse problema indo para %AppData%/nvm e alterando a segurança do arquivo settings.txt para que Everyone tivesse acesso total ao arquivo.

Se preferir não fazer isso, você também pode tentar executar nvm no prompt de comando com privilégios elevados. Usando executar como administrador.

Depois que não funcionou a partir do "Run Cmd" carregado inicialmente. Carreguei um cmd de administrador e executei a lista nvm que funcionou. Então, quando voltei para uma janela cmd normal, ela continuou a funcionar.

Eu recebi esse erro quando instalei pela primeira vez. Então eu executei o instalador como administrador, está tudo bem.

Eu instalei é e tudo o que precisava fazer era reiniciar o Windows. Tenho a sensação de que o cmd só precisava ser redefinido com as novas variáveis ​​​​de ambiente.

Mesma questão aqui. Eu segui a solução do @queckezz , funciona.

+1 reinicie no Win7

Para quem também não consegue fazer funcionar :: TENTE ISSO

Basta fechar todas as suas instâncias do prompt do CMD e reabrir como Administrador (apenas no caso).
Corrigido para mim

@mcpDESIGNS obrigado, me ajudou também!

Estou com o mesmo problema no Win10 x64.
Mas no meu caso é porque o link simbólico apontava para uma pasta inexistente em C (C:\Program Files\nodejs\v1.1.2).
A única pasta na pasta nodejs é "v4.0.0", então eu precisava remover o link simbólico e criar outro usando mklink /j "C:\Program Files\nodejs" "G:\Program Files (x86)\nvm

Este ainda é um problema no Windows 7 a partir de 2.1.2016. As variáveis ​​não estão sendo avaliadas em um cmd filho.

A solução é abrir uma nova janela cmd.

@coreybutler Suponho que você esteja usando SETX VAR value e start cmd .

SETX VAR value define a variável de ambiente chamada VAR apenas para novas instâncias de cmd
start cmd inicia um filho do cmd atual que usa o ambiente do pai

Uma solução alternativa é complementar SETX com SET VAR=value para duplicar o valor para o ambiente atual para processos filho.

Eu tentei muitas das soluções acima, e a única que acabou funcionando para mim foi reiniciar o Windows 7. :disappointed:

FYI: suporte ao Windows 7 = obsoleto.

@vferko - não estou usando explicitamente SET ou SETX . O mecanismo InnoSetup lida com tudo isso. Acredito que o problema esteja no sequenciamento. Esporadicamente, o instalador parece estar iniciando a janela cmd antes que os métodos de configuração da variável de ambiente sejam concluídos.

FYI: O ERRO open settings.txt: [...] aconteceu comigo em um Win10 x64. Depois de abrir uma nova janela cmd parece que está tudo ok :)

Ainda acontece com o 1.1.0 no Win10 x64. O mesmo que @DCorto

reinicie o cmd.exe e pronto

Eu tenho sintomas de alguma forma diferentes, mas parece estar relacionado a este problema:

  • Win7 de 64 bits, instalação bem-sucedida, mas 'nvm' não é reconhecido como interno ou externo ...
  • Após cada reinicialização do sistema, o nvm pode ser executado a partir da linha de comando, até o primeiro uso do nvm- então novamente 'nvm' não é reconhecido ...
  • A exclusão das variáveis ​​de usuário NVM_HOME e NVM_SYMLINK resolveu o problema (%vars% substituído em PATH por seus valores)

Isso deve ser resolvido com o novo instalador. O InnoSetup foi atualizado para a v1.1.7 e várias novas alterações foram feitas no install.cmd. O Windows 7 também não é tecnicamente suportado pela NVM4W ou pela Microsoft.

Recebi o mesmo erro com o novo 1.1.7, onde está a variável do usuário, não a vejo em settings.txt

Desculpe, apenas reinicie o computador e seu trabalho 💯

Este erro ainda está presente. Eu estava usando o NVM sem problemas por um tempo e agora tive um projeto que exigia que eu movesse meu cache NPM diretamente para a unidade C (para evitar problemas de caminho longo) e depois de fazer essa alteração (provavelmente, isso é a única alteração de configuração do NPM que eu fiz e no mesmo dia isso começou a acontecer…) esse problema começou a acontecer.

Descobri que executar o Powershell como administrador me permite executar o NVM sem problemas, que é uma solução alternativa que usarei por enquanto (posso definir as permissões de arquivo settings.txt "vale tudo", como o outro pôster se ficar muito chato).

Eu não acho que isso será uma solução para todos. Mas talvez para alguns. RESPOSTA CURTA: Tente fechar a janela de comando e abrir uma nova janela de comando. RESPOSTA LONGA: Descobri que, se eu instalasse o nvm usando o nvm_setup.exe (baixado em nvm_setup.zip) da linha de comando do Windows (janela de comando cmd.exe) e tentasse executar o nvm na mesma sessão da janela de comando (logo após a instalação ), deu-me este erro - ERROR open settings.txt. Eu olhei e os caminhos foram adicionados às minhas configurações de PATH do sistema. Então, fechei a janela de linha de comando e abri uma nova janela de comando. Então funcionou. Eu acho que mesmo que a instalação adicione o caminho para nvm.exe (e para settings.txt) ao PATH do Windows, ele ainda não é reconhecido na mesma janela de comando. Feche a janela de comando e abra uma nova. Espero que isso ajude alguém. Uma sugestão para o instalador é talvez dar uma mensagem ao usuário no início da instalação de que a janela de comando será fechada assim que a instalação estiver concluída. Em seguida, basta fechar a janela de comando quando a instalação terminar. Em seguida, o usuário é forçado a abrir uma nova janela de comando após a instalação.

Ainda acontece com o 1.1.0 no Win10 x64. O mesmo que @dcorto

reinicie o cmd.exe e pronto

mesmo com win10 + powershell, apenas feche a instância do cmd ou powershell e reinicie um novo cmd ou powershell

O InnoSetup nem sempre respeita a ordem das operações ao escrever o arquivo de configurações iniciais e definir o caminho. É por isso que reabrir a janela funciona após a instalação inicial.

Eu recebi um erro quando executei o npx create react app, ele diz digite o caminho exato onde o arquivo zip é extraído/copiado: está tendo após a instalação do nvm e a instalação do nó 12.

Ainda acontece com o 1.1.0 no Win10 x64. O mesmo que dcorto

reinicie o cmd.exe e pronto

Isso ainda funciona (como solução alternativa) @Muizuddeen

Descobri que se você copiar settings.txt para c: também funciona

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

janpio picture janpio  ·  3Comentários

fredericrous picture fredericrous  ·  3Comentários

AllainPL picture AllainPL  ·  7Comentários

snerte picture snerte  ·  5Comentários

David263 picture David263  ·  3Comentários