Problemas na instalação do Java EE SDK no Linux
Pergunta
Eu instalei o Java 6 JRE no meu VPS muito bem, mas eu não posso começar a instalação EE SDK até mesmo prazo.
root@vps [/usr/java]# java -version
java version "1.6.0_18"
Java(TM) SE Runtime Environment (build 1.6.0_18-b07)
Java HotSpot(TM) Client VM (build 16.0-b13, mixed mode)
No entanto, quando tento executar java_ee_sdk-6-unix.sh
:
./ ../ java_ee_sdk-6-unix.sh* jre1.6.0_18/ jre.bin*
root@vps [/usr/java]# ./java_ee_sdk-6-unix.sh
Could not locate a suitable jar utility.
Please ensure that you have Java 6 or newer installed on your system
and accessible in your PATH or by setting JAVA_HOME
Mas o problema é que eu definir meus variáveis ??de ambiente corretamente:
root@vps [/usr/java]# echo $PATH
/usr/java/jre1.6.0_18:/usr/java/jre1.6.0_18/bin:/usr/java/jre1.6.0_18/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin
root@vps [/usr/java]# export -p | grep JAVA_HOME
declare -x JAVA_HOME="/usr/java/jre1.6.0_18"
Eu estou puxando meu cabelo aqui, todas as idéias?
Solução
Você tem um JDK instalado? Você provavelmente quer colocar $JDK_HOME/bin
em seu PATH, não o /bin
de um JRE, como jar
vem com JDK, não JRE.
Outras dicas
Faça o seguinte:
- Excluir todas as instalações do Java.
- Instale o Java SDK (auto-extraível) em /opt/jdk1.6.0_16 (por exemplo)
- Crie um link simbólico:
ln -s /opt/jdk1.6.0_16 /opt/jdk
-
Editar
$HOME/.bashrc
:JAVA_HOME = / opt / jdk
PATH = $ PATH: $ HOME / bin: $ JAVA_HOME / bin -
Sair e voltar a iniciar sessão.
Isto oferece muitas vantagens:
- Você pode instalar várias versões do SDK e necessidade única mudar um link simbólico.
- Você sabe onde todos os arquivos estão localizados.
- Você sabe exatamente qual versão do Java está sendo usado.
- Não há outras versões são instalados, por isso não pode haver quaisquer conflitos.
Eu tenho feito isso há anos e nunca tive qualquer problema com o Java no Linux, exceto para pacotes que não detectam que o Java está instalado e tentar instalar o OpenJDK.
Além disso, ficar longe do OpenJDK como suas fontes são terrível de se ver.
solução rápida e suja para mim:
sudo apt-get install jarwrapper fastjar
Em seguida, basta executar o script .sh e voila!
Eu tenho o mesmo erro. Tirei OpenJDK usando apt-get (Estou correndo Ubuntu 11.10), então baixado Java JDK 1.7 (que vem naturalmente com JRE) e descompactado isso sob / usr / local / java - isso me deu novo diretório:
/usr/local/java/jdk1.7.0_04
Em seguida eu adicionei:
/usr/local/java/jdk1.7.0_04
para $ PATH, set $ JAVA_HOME e US $ JRE_HOME como
/usr/local/java/jdk1.7.0_04
/usr/local/java/jdk1.7.0_04/jre
respectivamente.
Tudo funciona agradável. I pode compilar progams java usando javac e executá-los usando java . Jar programa funciona muito bem também. Então porque é que Java EE instalador reclamar sobre isso? Qualquer pistas como a forma de corrigir isso?
Eu tive o problema, no entanto, estava relacionada com a conta de usuário sudo ao executar o arquivo .sh. Eu estava instalando v3 Glassfish em um novo VPS servidor hospedado com o Ubuntu 10.4 SO de 64 bits.
sudo chmod +x java_ee_sdk-6u2-jdk-linux-x64.sh
sudo ./java_ee_sdk-6u2-jdk-linux-x64.sh -s -a java_ee_sdk-6u2-jdk-linux-x64-install-answers.txt
Apenas para obter exatamente o mesmo erro que foram pela primeira vez experimentando:
Could not locate a suitable jar utility.
Please ensure that you have Java 6 or newer installed on your system
and accessible in your PATH or by setting JAVA_HOME
Silly realmente, quando eu corria o comando como este:
./java_ee_sdk-6u2-jdk-linux-x64.sh -s -a java_ee_sdk-6u2-jdk-linux-x64-install-answers.txt
Para minha surpresa ele respondeu com:
Welcome to GlassFish V3 installer
Using the user defined JAVA_HOME : /opt/jdk
Entering setup...
Isso foi depois que eu tinha configurar o meu JAVA_HOME no arquivo: /etc/bash.bashrc
JAVA_HOME=/opt/jdk
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH
No meu caso, eu tinha jdk1.6.0_16 extraídos no meu diretório home e teve um links simbólicos para java
e /javac
em /bin
. Então eu encontrei o erro descrito acima na pergunta.
No entanto, uma vez eu incluí um link simbólico para jar
em /bin
, o shell script para instalar o Java EE correu como esperado.
Esta informação funciona para mim ... O primeiro método foi enought.
Cumprimentos.
http://ubuntuforums.org/showthread.php?p=11485538#post11485538
Os meus 2 centavos ...
Eu tenho o mesmo problema e resolvê-lo através da instalação de um utilitário jar.
As "matt b" disse que o problema era (bem o meu problema), que o instalador não estava encontrando um utilitário jar (programa jar), necessário para executar os arquivos de instalação.
Você tem um JDK instalado? Você provavelmente quer colocar $ JDK_HOME / bin em seu PATH, não o / bin de um JRE, como frasco vem com JDK, não JRE.
Mas no meu caso (tendo Ubuntu 11.10 x64 e JAVA_HOME -> / usr / lib / jvm / java-6-openjdk) o problema não foi resolvido definindo a / dir bin JDK no caminho. Em vez disso eu tive que instalar um pacote utilitário jar (usando o Synaptic) chamou Jarwrapper versão 0.37ubuntu1.
Depois de instalá-lo, o roteiro do JDK da Oracle de instalação (java_ee_sdk-6u3-jdk7-linux-x64-ml.sh) correu muito bem.
Saudações,