Como faço para definir variáveis ​​de ambiente?
Estou tentando configurar o Apache Tomcat no meu pc e ele quer que eu configure uma variável de ambiente para CATALINA_HOME. Alguém sabe como fazer isso?
No bash, você pode definir variáveis ​​como esta:
a maioria das outras conchas segue esta convenção, mas não todas. Você pode configurá-lo permanentemente ~/.profilepara o bash (e, como antes, outros shells têm outros locais)
Onde declarar variáveis ​​de ambiente?
para as variáveis de toda a sessão, help.ubuntu.com recomenda ~/.profilecomo provavelmente o melhor arquivo para a colocação de atribuições de variáveis de ambiente em, uma vez que é executado automaticamente pelo DisplayManager durante a sessão de desktop processo de inicialização, bem como pelo shell de login quando um toras-in do console de texto.
Atualizado a resposta. A razão pela qual eu usei o .bashrc foi que, em algum momento, o .profile não foi originado automaticamente. Mas se funcionar agora, é melhor usá-lo.
— Ressu 5/08/10
Colocá-lo ~/.profilenão funciona para mim. Funciona ~/.bashrcembora.
Configurá-lo também ~/.bash_profilefunciona.
Há também um arquivo amplo do sistema em / etc. Isso funciona, mas é por usuário.
— partir de
Variáveis ​​de ambiente já devem funcionar
Se você estiver usando o pacote tomcat6 nos repositórios Ubuntu, então o CATALINA_HOME e outras variáveis ​​de ambiente já estão definidas, no /etc/init.d/tomcat6script de inicialização.
Se você estiver instalando o tomcat fora do gerenciador de pacotes (esperamos que esteja em / opt ou em outro local fora do sistema de arquivos gerenciado), execute o TOMCAT/bin/startup.shdeve usar o local relativo para definir o CATALINA_HOME.
Definindo a variável de ambiente
Se, por algum motivo, você ainda precisar definir uma variável de ambiente, poderá abrir uma janela do terminal e digitar o comando:
Essa variável de ambiente agora funcionará nessa janela do terminal, mas se você abrir outra janela ou efetuar logout / login, perderá essa configuração.
Tornar a variável de ambiente permanente
Para tornar a configuração da variável de ambiente permanente, há vários locais em que você pode definir a configuração.
Para ter certeza de que a configuração está sendo selecionada, adicione a configuração acima a um dos scripts de inicialização do tomcat:
Nota: startup.sh chama catalina.sh. Você deve adicionar a configuração no início de um desses arquivos (após qualquer comentário inicial)
A maneira padrão para variáveis ​​de ambiente global seria adicionar uma entrada /etc/environment(você não usa o comando export neste arquivo, pois não é um script bash normal)
Você pode definir as variáveis ​​de ambiente nos arquivos de configuração do bash (shell da linha de comando), mas eles não são recomendados, pois nem sempre são captados (por exemplo, se você estiver executando um servidor no qual não faz login para executar o tomcat): ~ / .bashrc | ~ / .profile | /etc.bash.bashrc | / etc / profile
— jr0cket
Não deve ser o startupou catalinaroteiros, mas o setenv.shou setenv.batroteiro, criando-se necessário:. "Além de CATALINA_HOME e CATALINA_BASE, todas as variáveis de ambiente pode ser especificado no 'roteiro setenv' O script é colocado tanto em CATALINA_BASE / bin ou em CATALINA_HOME / bin e é nomeado setenv.bat (no Windows) ou setenv.sh (em * nix). O arquivo deve ser legível. " ( Executando o contêiner Servlet / JSP do Apache Tomcat 7.0 , Seção 3.4)
Para definir variáveis ​​de ambiente permanentes nas versões mais recentes do Ubuntu (a partir de 14.04 e acima), adicione as variáveis ​​em /etc/environment. Para isso, siga as instruções abaixo,
forneça sua senha e, em seguida, no arquivo de texto solicitado
depois adicione as variáveis ​​como
A amostra /etc/environmenté dada abaixo
não se esqueça de sair e fazer login novamente para ativar as variáveis ​​de ambiente.
— Kasun Siyambalapitiya
O melhor lugar para isso depende de como e onde você instalou o Tomcat, quais aplicativos você deseja escolher nessa configuração e quão global você deseja que o escopo seja.
A documentação do Ubuntu sobre variáveis ​​de ambiente discute os prós e contras das várias opções.
A que você se refere quando diz "melhor lugar para isso"?
@jumpnett - quero dizer onde tornar a configuração persistente para que ela esteja sempre disponível para os aplicativos, dependendo dela. A menos que você esteja feliz digitando a configuração todas as vezes ou queira escrever seu próprio script.
Provavelmente, provavelmente já conterá um pouco de dados. A maioria das definições aqui é para definir opções do bash, que não estão relacionadas a variáveis ​​ambientais. Você pode definir variáveis ​​de ambiente como faria na linha de comando:
Eu testei no Ubuntu 16.04. Funciona bem.
— Sunny127
Depois de passar pela documentação do Ubuntu sobre variáveis ​​de ambiente, criei a seguinte solução alternativa:
A última linha cria um shell filho, que herda os valores da variável de ambiente do shell pai (que acabaram de ser definidos).