'tools.jar' befindet sich nicht im IDEA-Klassenpfad

48

Ich bin ein neuer Benutzer von Linux, es wurde mir von meinem Freund empfohlen.

Er sagte mir, ich solle eine Software namens IntelliJ Idea IDE installieren.

Nun, ich habe das Tutorial verfolgt. Aber jetzt, wenn ich versuche, "idea.sh" zu öffnen, erscheint eine Fehlermeldung:

'tools.jar' is not in IDEA classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.

Bitte denkt daran, dass ich neu in Ubuntu bin und einen schönen, langen Aufenthalt plane, sobald ich mich darauf einlasse :)

Außerdem weiß ich nicht, ob ich ein korrektes Java6-JDK verwende. Wenn ich das tue java -version, bekomme ich Folgendes:

java version "1.6.0_23"
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre10-0ubuntu5)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)

Vielen Dank für das Lesen und ich hoffe, ich bekomme eine nette Antwort.

Patrick
quelle
Ich löste das gleiche Problem mit dieser Antwort, vielleicht helfen stackoverflow.com/a/17827697/3057033
Erol Guzoğlu

Antworten:

62

Stellen Sie sicher, dass auf Ihrem System ein JDK installiert ist.

sudo apt-get install openjdk-7-jdk

Wenn dies Ihr Problem nicht löst, müssen Sie Ihrem System mitteilen, dass dieses JDK anstelle des aktuellen JRE verwendet werden soll. Dazu wählen Sie, welches JDK / JRE Sie standardmäßig auf Ihrem System verwenden, indem Sie den folgenden Befehl im Terminal ausführen.

sudo update-alternatives --config java

Mit diesem Befehl erhalten Sie eine Liste mit alternativen Java-Optionen, mit denen Sie ein JDK anstelle von JRE auswählen können.

Allejo
quelle
das hat sehr geholfen, aber jetzt bekomme ich: tools.jar 'scheint nicht in IDEA classpath zu sein. Stellen Sie sicher, dass JAVA_HOME auf JDK und nicht auf JRE verweist.
anon58192932
@advocate Ich habe deinen Kommentar zu SO gesehen. Ihr Problem wurde durch eine Neuinstallation von JDK behoben, richtig?
Allejo
2
Jep! Nur sudo apt-get installieren openjdk-7-jdk
anon58192932
2
Ich musste den JAVA_HOME-Pfad in ~ / .bashrc setzen, bevor dies funktionierte.
Fuzzy Analysis
Könntest du mir sagen, wie ich das machen kann, "setze das JAVA_HOME ...."
Nitesh Verma
15

In meiner Linux Mint-Umgebung ist das gleiche Problem aufgetreten. Ich habe versucht, Oracle JDK8 mit zu installieren

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Das Problem blieb jedoch bestehen, da das Installationsprogramm die Umgebungsvariablen nicht geändert hat. Dann habe ich folgendes versucht

sudo apt-get install oracle-java8-set-default

und es löste das Problem

Renadeen
quelle
Perfekte Lösung für mich und auch Java 8 erlaubt
Pitto
das hat bei mir funktioniert (elementary OS x64 Freya) danke
zguell 02.10.15
5

Versuchen Sie diesen Befehl

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

und führe idea.sh erneut aus.

Dies funktioniert allerdings nur innerhalb des Terminals, in dem Sie den Befehl ausführen. Sie müssen die Variable in der .bashrc-Datei festlegen. Dadurch wird es auf jedem Terminal aktiviert, das Sie öffnen.

Paketüberfluss

ShaggyInjun
quelle
Ich habe es versucht, aber immer noch den gleichen Fehler
Nitesh Verma
Danke! Ich weiß, dass dies nicht jedermanns Problem ist, aber keine der anderen Antworten sagt tatsächlich, worauf ich mich einstellen sollte JAVA_HOME!
River Tam
5

Versuche dies:

sudo apt-get install openjdk-6-jdk

Du brauchst JDK.

js11
quelle
5

Die obigen Antworten sind korrekt, aber ich muss eine Sache hinzufügen. Tatsächlich unterscheiden sich die Umgebungsvariablen für die Shell-Sitzung und die Desktop-GUI-Sitzung ( überprüfen Sie dies ). Wenn der Fehler beim Starten von IntelliJ mit Desktop Entry (dem Launcher) auftritt, befindet sich JAVA_HOME möglicherweise nicht in Ihrer GUI-Umgebung.

Die einfachste Lösung besteht darin, JAVA_HOME in der Exec-Zeile des Desktop-Eintrags wie folgt hinzuzufügen:

[Desktop Entry]
Version=1.0
Type=Application
Name=IntelliJ IDEA Community Edition
Icon=/home/zhu/Applications/IntelliJ/bin/idea.png
Exec=env JDK_HOME=/usr/lib/jvm/java-7-openjdk-amd64 "/path/to/idea.sh" %f
Comment=Develop with pleasure!
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-idea-ce
Hadschimuz
quelle
Perfekte Lösung für mein Problem. Das Hinzufügen des env-Arguments im Exec hat den Trick ausgeführt.
Heather92065
2

Ich habe dieses Problem mit diesen Befehlen gelöst

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
sudo apt-get install oracle-java8-set-default

und

export JAVA_HOME=/usr/lib/jvm/default-java
Railander Guilherme
quelle
Wo platzieren Sie den letzten Befehl, den export JAVA_HOME=/usr/lib/jvm/default-javaSie erwähnen?
MadMike
1

Die Lösung zum Exportieren der Variablen JAVA_HOME funktioniert in Ubuntu nicht. Ich habe es gelöst, indem ich das bin-Verzeichnis zur PATH-Variable hinzugefügt habe.

Ich habe das JDK von der Oracle-Website heruntergeladen und es in das folgende Verzeichnis gestellt: /home/alejandro/software/JAVA-descarga/jdk1.8.0_25

Dann müssen Sie diese Route zur PATH-Variablen hinzufügen:

export PATH=/home/alejandro/software/JAVA-descarga/jdk1.8.0_25/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games  

Führen Sie dann die Datei idea.sh im selben Terminal aus und es wird gut starten.

Alejandor
quelle
0

Bearbeiten Sie die Datei android-studio/bin/studio.sh

wie der Markierungsinhalt ( JAVA_HOMEZeile)

#!/bin/sh
#
# ---------------------------------------------------------------------
# Android Studio startup script.
# ---------------------------------------------------------------------

    JAVA_HOME=your_path/jdk1.8.0_31

message()
phubber
quelle
0

Auch wenn auf der Benutzeroberfläche Popup-Meldung steht

'tools.jar' is not in IDEA classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.

In der Befehlszeile wird angezeigt

ERROR: cannot start IntelliJ IDEA.
No JDK found to run IDEA. Please validate either IDEA_JDK or JDK_HOME points to valid JDK installation

und genau das war das problem für mich. Das Einstellen JAVA_HOMEfunktionierte nicht, musste aber eingestellt werden JDK_HOME, damit es funktionierte.

Aniket Thakur
quelle