Instalei o ServiceMix na minha máquina e estou tentando iniciá-lo. O script de inicialização é chamado de start.sh. Quando eu fiz ./start.sh
, ele me deu uma mensagem de permissão negada. Então eu usei sudo ./start.sh
, que inicia o servidor bem.
No entanto, parece estar usando o Java 7, quando eu gostaria de usar o Java 6 (por várias razões). Analisei o script start.sh e descobri que ele usa a variável JAVA_HOME
. Então eu configurei meu JAVA_HOME para o diretório do JDK 6.
No entanto, o ServiceMix ainda usa o Java 7.
Uma pesquisa no Google revelou que quando um comando é executado com o sudo, o sudo remove certas variáveis de ambiente. Então eu fiz sudo -E ./start.sh
. Novamente, usou o JDK 7.
Eu abri o start.sh e adicionei uma linha, echo $JAVA_HOME
para ver se a variável está definida corretamente ou não. A saída de echo
era uma linha vazia.
Eu tentei modificar o arquivo / etc / sudoers para incluir Defaults env_keep += "JAVA_HOME"
. A execução de start.sh agora me diz que minha instrução de eco é novamente uma linha vazia. O ServiceMix ainda usa o JDK 7.
Eu tentei definir JAVA_HOME em /etc/profile
. A execução de start.sh agora me diz que minha instrução de eco é novamente uma linha vazia. Novamente, o ServiceMix usa o JDK 7.
Que erro estou fazendo aqui?
FWIW, estou no Mac OS X 10.8.2. echo $SHELL
no meu terminal retorna / bin / bash. Quando eu uso sudo su
e fogo echo $SHELL
, ele retorna / bin / sh.