Instalando o IDEA no Ubuntu 11.10

Eu estou tentando instalar o IDEA no Ubuntu 11.10. Primeiro instalei o openjdk-7-jdk . Então eu tentei executar o arquivo idea.sh como instruído. No entanto, reclama:

 ERROR: cannot start IntelliJ IDEA. No JDK found to run IDEA. Please validate either IDEA_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation. Press Enter to continue. 

Tentando echo essas três variables ​​imprime uma linha vazia na canvas. Como (e para quais valores) eu configuro essas variables ​​e continuo com a instalação? Obrigado.

É recomendado usar o OpenJDK 1.7+ ou o Oracle JDK para executar o IntelliJ IDEA no Linux, o OpenJDK 1.6 é estritamente não suportado por causa do desempenho conhecido e problemas visuais.

A partir do IntelliJ IDEA 16, o JRE personalizado é empacotado com as distribuições do Linux.

A parte complicada é que o Oracle JDK não é mais distribuído via pacotes .deb e você não pode simplesmente instalá-lo com o apt-get ou o Ubuntu Software Center.

O site deles também é confuso e você pode facilmente baixar o JRE em vez do JDK (que não funcionará como o IntelliJ IDEA precisa do tools.jar que está faltando no pacote do JRE).

Aqui está a URL correta para os downloads do JDK (versão 1.6.0_29). A partir dessa URL, faça o download do arquivo .bin apropriado, por exemplo, jdk-6u29-linux-i586.bin, se precisar de Java de 32 bits ou jdk-6u29-linux-x64.bin para a versão de 64 bits.

 chmod +x jdk-6u29-linux-i586.bin ./jdk-6u29-linux-i586.bin 

para instalar no diretório atual .

Dentro de bin / idea.sh adicione o seguinte na segunda linha:

 export IDEA_JDK=/path/to/jdk1.6.0_29 

Normalmente reside em /usr/lib/jvm/ . Agora o IntelliJ IDEA deve começar bem no Oracle JDK 1.6.0_29. Você pode verificar isso na Help | About .

Você pode definir a variável JAVA_HOME e adicioná-la ao seu PATH , fazendo o seguinte. Como root, abra /etc/bash.bashrc e inclua o seguinte no final do arquivo.

 JAVA_HOME=/usr/lib/jvm/java export JAVA_HOME 

Quando você reiniciar, tente executar o seguinte:

 $ echo $JAVA_HOME 

Eu também enfrento uma pergunta … em primeiro dia tudo funciona sem problemas, mas então … eu resolvo um problema: adicionar ao arquivo a linha idea.sh com o caminho para o JDK IDEA_JDK="/opt/java/32/jdk1.6.0_45/"

adicione depois da linha 46

se você instalou java, tente

 type java 

se você ver assim

 java is /usr/java/default/java 

então você deve editar .bash_profile, adicionar

 export JAVA_HOME=/usr/java/default 

então execute

 source .bash_profile 

Se você não instalar o java, você deve instalar manual ou automático.

Eu tive esse problema algumas vezes …

  1. Adicione o IDEA_HOME / bin ao seu PATH Certifique-se de que JAVA_HOME e outras variables ​​estejam corretas.

em seguida, execute-o a partir do terminal:

 $ idea projects-name; 

OU 2: navegue até o IDEA_HOME / bin e execute-o a partir dele.

Na verdade, você pode configurar o JAVA_HOME no bash. Mas, o IDEA usa javac e java a partir de pastas bin padrão. Então, você tem que configurar assim.

  • Faça o download do JDK para a pasta home (~)
  • extrair o arquivo zip
  • use estes comandos para mv para a pasta jvm em / usr / lib / jvm

     sudo mv -r ~/jdk-xx-version /usr/lib/jvm 
  • use esses comandos para configurar o JAVA_HOME

     sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk-xx-version/bin/java" 1 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk-xx-version/bin/javac" 1 sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk-xx-version/bin/javaws" 1 

Você instala o JDK 8 com:

 sudo apt-get install openjdk-8-jdk 

Então, às vezes, o problema está na versão padrão do JAVA que você está executando. Para isso, use update-alternatives para modificá-lo:

 sudo update-alternatives --config java 

Veja como eu fiz:

 $ sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 auto mode 1 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1071 manual mode 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1069 manual mode Press enter to keep the current choice[*], or type selection number: 2 update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java to provide /usr/bin/java (java) in manual mode 

E agora o Intellij IDEA 2016.3 está funcionando bem.

Aqui está um script bash para desenvolvedores que instalam o IDEA para que você possa executá-lo a partir do shell via idea.sh

Isso também:

  • Testa se o sistema operacional está sendo executado no VirtualBox
  • Se for executado no VirtualBox, testa se o IdeaProjects está configurado para compartilhamento
  • Se sim, grava um comando mount no script de bootstrap para montar automaticamente os projetos do host para o convidado
  • Também cria um script para montar e desmontar projetos de ideias dinamicamente
 #!/bin/bash #Author: Yucca Nel http://thejarbar.org #Modify these variables as needed... tempWork=/tmp/work defaultStartScript=/etc/init.d/rc.local defaultIDEA=11.0.1 locBin=/usr/local/bin read -p "Please [Enter] full path name of your local startup script ($defaultStartScript is the default). Please make sure on this before providing a value by consulting documentation for your system:" locStartScript locStartScript=${locStartScript:-$defaultStartScript} read -p "Please [Enter] IDEA Version ($defaultIDEA is default):" ideaVersion ideaVersion=${ideaVersion:-$defaultIDEA} if [ ! -f $locStartScript ] then echo "The file you provided could not be found. Remember to include the full path and try again. Exiting in 7 secs..." sleep 7 exit 1 fi mkdir -p /$tempWork cd /$tempWork sudo wget http://download-ln.jetbrains.com/idea/ideaIC-$ideaVersion.tar.gz; tar -zxvf ./*; #Move it to a better location... mv ./idea-IC-* $HOME/; sudo ln -f -s $HOME/idea-*/bin/* /usr/bin/; #If you use VirtualBox , you can share your projects between Host and guest. Name of shared #folder must match 'IdeaProjects' mkdir -p $HOME/IdeaProjects if [ -f /sbin/mount.vboxsf ] then sudo /sbin/umount $HOME/IdeaProjects sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects fi if mountpoint -q ~/IdeaProjects then #Add it to the start script to automate process... if ! grep "sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects" $locStartScript then echo "sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects" | sudo tee -a $locStartScript fi sudo chmod +x $locStartScript #Create a mount and unmount script file... rm -rf $tempWork/* echo '#!/bin/bash' > $tempWork/idea-mount.sh echo "sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects" >> $tempWork/idea-mount.sh echo "echo 'mounted IdeaProjects'" >> $tempWork/idea-mount.sh echo "exit 0" >> $tempWork/idea-mount.sh echo '#!/bin/bash' > $tempWork/idea-umount.sh echo "sudo umount $HOME/IdeaProjects" >> $tempWork/idea-umount.sh echo "echo 'unmounted IdeaProjects'" >> $tempWork/idea-mount.sh echo 'exit 0' >> $tempWork/idea-umount.sh #Script for mounting ALL VirtualBox shared solders.... #If there isn't one create one... if [ ! -f $locBin/mount-all-from-host.sh ] then echo '#!/bin/bash' > $tempWork/mount-all-from-host.sh echo "sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects" | sudo tee -a $tempWork/mount-all-from-host.sh echo "exit 0" | sudo tee -a $tempWork/mount-all-from-host.sh #Otherwise if there is one, but no mount, add one... elif ! grep "sudo /sbin/mount.vboxsf IdeaProjects" $locBin/mount-all-from-host.sh then sudo sed -ie '$d' $locBin/mount-all-from-host.sh echo "sudo /sbin/mount.vboxsf IdeaProjects $HOME/IdeaProjects" | sudo tee -a $locBin/mount-all-from-host.sh echo "exit 0" | sudo tee -a $locBin/mount-all-from-host.sh fi #Script for unmounting ALL VirtualBox shared folders... #If there isn't one create one... if [ ! -f $locBin/umount-all-from-host.sh ] then echo '#!/bin/bash' > $tempWork/umount-all-from-host.sh echo "sudo umount -a -t vboxsf" | sudo tee -a $tempWork/umount-all-from-host.sh echo "echo 'unmounted all VirtualBox shared folders'" | sudo tee -a $tempWork/umount-all-from-host.sh echo "exit 0" | sudo tee -a $tempWork/umount-all-from-host.sh fi sudo chmod +x $tempWork/* sudo mv -f $tempWork/*.sh $locBin/ rm -rf $tempWork fi sudo rm -rf $tempWork exit 0