WebStorm / IntelliJ não está vendo variáveis de ambiente do Linux, mesmo rodando sob o mesmo usuário exato?

0

No meu arquivo .bashrc do usuário Linux para a conta de usuário em que executo quando faço desenvolvimento baseado em Linux, defino uma variável de ambiente para permitir que meus aplicativos saibam que estão em execução no ambiente de desenvolvimento executando sob o ambiente de produção:

LINUX_DEV=true
export LINUX_DEV # Make LINUX_DEV an environment variable

Se eu abrir uma nova janela do Terminal e executar o seguinte, vejo a configuração:

$>printenv | grep LINUX_DEV
$>LINUX_DEV=true

Tudo está bem. No entanto, quando eu executo o WebStorm / IntelliJ, e uso seu recurso interno para iniciar uma janela do Terminal, a variável de ambiente não pode ser encontrada:

$>printenv | grep LINUX_DEV
$>

Se eu executar o comando whoami a partir de uma janela do Terminal externo ou da janela do Terminal lançada pelo WebStorm, obtenho exatamente o mesmo nome de usuário (meu nome de usuário para a conta de usuário em execução minha caixa Linux local), por isso não é um problema com diferentes contas de usuário. Eu já tentei uma reinicialização completa do meu sistema para garantir que não seja um problema transitório. O problema persiste.

O WebStorm / IntelliJ está rodando de alguma maneira estranha que não pode acessar as variáveis de ambiente definidas para a conta de usuário local? Se o IDE estava sendo executado como um serviço de segundo plano ou algum outro contexto exeqüível de executável eu poderia entender isso, mas como eu disse, eu o inicio como um aplicativo regular sob minha conta de usuário e o comando whoami mostra exatamente o mesmo nome de usuário como uma janela do Terminal externo.

Este é um problema real porque quando tento usar a variável Node.JS process.env e obtenho o valor de process.env.LINUX_DEV , essa variável é undefined naturalmente devido a este problema. Como posso fazer isso funcionar corretamente?

OBSERVAÇÃO : Eu fiz tentei colocar a mesma configuração de variável de ambiente no meu arquivo / etc / environment . Eu tive que fazer uma reinicialização completa para obter a janela do Terminal WebStorm para ver as alterações, mas fez funcionar. No entanto, eu preferiria ter a configuração na minha conta de usuário local, portanto, se alguém souber por que estou tendo esse problema em configurá-lo em .bashrc , eu gostaria de saber.

UPDATE: Embora a variável de ambiente definida no arquivo / etc / environment seja visível em uma janela do WebStorm Terminal, não é visível através da variável Node.JS process.env , então eu ainda estou sem sorte. Estou realmente espantado que isso seja tão difícil neste momento.

    
por Robert Oschler 28.02.2017 / 19:02

1 resposta

0

Estou postando esta resposta para salvar os outros da mesma dor que acabei de passar. O motivo pelo qual não consegui acessar as variáveis de ambiente do aplicativo WebStorm / Node.JS foi porque eu não tinha o módulo "processo" do NPM instalado. Depois de instalar o módulo, o process.env começou a trabalhar para mim. Eu usei o seguinte comando para instalá-lo, iniciado a partir de uma janela do Terminal definida para o diretório de nível superior que contém meu aplicativo Node.JS:

$>sudo NPM -g install process --save
    
por 28.02.2017 / 19:25