Intellij idea Intellij:JDK必需:“tools.jar”似乎不在IDEA类路径Ubuntu16.04中

Intellij idea Intellij:JDK必需:“tools.jar”似乎不在IDEA类路径Ubuntu16.04中,intellij-idea,intellij-14,java-home,Intellij Idea,Intellij 14,Java Home,我在这里查看了很多答案,也遵循了它们,但是错误仍然存在,我无法启动Intellij for java。 这是我的java版本 我的javac版本 javac9-internal 我的$javau之家 当我将cd放入/bin并运行/idea.sh时 我得到以下错误 WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader WARN: Unknown class loader: jdk.internal.

我在这里查看了很多答案,也遵循了它们,但是错误仍然存在,我无法启动Intellij for java。 这是我的java版本

我的javac版本

javac9-internal

我的$javau之家

当我将cd放入/bin并运行/idea.sh时

我得到以下错误

WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$PlatformClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$PlatformClassLoader

JDK Required: 'tools.jar' seems to be not in IDEA classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f5624a1e009, pid=15159, tid=15182
#
# JRE version: OpenJDK Runtime Environment (9.0) (build 9-internal+0-2016-04-14-195246.buildd.src)
# Java VM: OpenJDK 64-Bit Server VM (9-internal+0-2016-04-14-195246.buildd.src, mixed mode, tiered, compressed oops, concurrent mark sweep gc, linux-amd64)
# Problematic frame:
# C  [libjava.so+0x1d009]  JNU_GetEnv+0x19
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %P" (or dumping to /home/ekbana/softwares/idea-IC-171.4694.23/bin/core.15159)
#
# An error report file with more information is saved as:
# /home/ekbana/java_error_in_IDEA_15159.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted (core dumped)
当我做sudo./idea.sh时,我得到以下错误

WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$PlatformClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$AppClassLoader
WARN: Unknown class loader: jdk.internal.loader.ClassLoaders$PlatformClassLoader

JDK Required: 'tools.jar' seems to be not in IDEA classpath.
Please ensure JAVA_HOME points to JDK rather than JRE.
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f5624a1e009, pid=15159, tid=15182
#
# JRE version: OpenJDK Runtime Environment (9.0) (build 9-internal+0-2016-04-14-195246.buildd.src)
# Java VM: OpenJDK 64-Bit Server VM (9-internal+0-2016-04-14-195246.buildd.src, mixed mode, tiered, compressed oops, concurrent mark sweep gc, linux-amd64)
# Problematic frame:
# C  [libjava.so+0x1d009]  JNU_GetEnv+0x19
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %P" (or dumping to /home/ekbana/softwares/idea-IC-171.4694.23/bin/core.15159)
#
# An error report file with more information is saved as:
# /home/ekbana/java_error_in_IDEA_15159.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted (core dumped)

我已经到了完全不知道发生了什么的地步。

确保您的系统上安装了JDK

sudo apt-get install openjdk-7-jdk
如果这不能解决您的问题,您必须告诉您的系统使用该JDK而不是当前的JRE。为此,您可以通过在终端中执行以下命令来选择默认情况下在系统上使用的JDK/JRE

sudo update-alternatives --config java

此命令将为您提供一个可选java选项列表,然后您可以选择JDK而不是JRE。

那些厌倦了寻找解决方案的人。 适用于linux用户

开放式终端和类型 incred@incred-纬度-3560:~$java在哪里

将位置复制到last leaving/bin/java(在我的情况下是 /home/incred/development/android studio/jre/bin/java

变成

/home/incred/development/android studio/jre

现在去你理想的安装地点,前往垃圾桶 目录 cd idea-IC-172.3968.16/bin/

使用所需的编辑器打开idea.sh文件,并在“查找工具”中查找此行。 JAVA_BIN=$JDK/BIN/JAVA 将java位置从上一行粘贴到找到的位置上方的一行

JDK=/home/incred/development/android studio/jre

JAVA_BIN=$JDK/BIN/JAVA

保存它并从终端执行idea.sh。
简而言之,只需尝试在idea.sh文件或类似的windows用户文件中更新java安装的位置。

在我的情况下,我需要运行以下两个命令:

sudo apt-get install openjdk-8-jre
sudo apt-get install openjdk-8-jdk

我终于解决了这个让我发疯的问题

首先,您必须确保您已经从oracle的网页下载了JDK for linux

接下来,您必须转到安装intellij:idea-IC-173.4548.28/bin的路径/

有两种方法可以修改文件idea.sh、throw terminal或text deditor。就我而言,最终:

nano idea.sh
在这里,您需要声明离开安装JDK的路径,它可以是:

自有路径:/home/programs/jdk1.8.0_162 系统路径:/user/lib/jvm/bin/java-1.8.0-openjdk-i386 您的申报方式如下所示:

#Locate a JDK installation dierctory which will be used to run the IDE.
#Try (in order): IDEA_JDK, idea.jdk, ./jre64, JDK_HOME, JAVA_HOME, "java" in PATH
#------------------------------------------------------------------------------
请插入:

JAVA_HOME="/home/programs/jdk1.8.0_162"
保存

接下来,我们必须将tool.jar从路径/home/programs/jdk1.8.0_162/lib复制粘贴到路径/home/programs/jdk1.8.0_162/bin

最后,我们回到终点站:

cd /home/programs/jdk1.8.0_162/bin
./idea.sh

这应该是可行的

我遇到了一个类似的问题,我没有使用Oracle JDK,而是在Debian Stretch上使用OpenJDK-8,试图找到JDK工具,但找不到,但是eclipse和maven工作正常。我刚刚为Debian安装了默认的jdk,它通过以下命令解决了IntellijIDEA的问题

sudo apt get安装默认jdk


对于像我这样在Fedora上使用这个的懒人来说,我只需要找到一个好的模块,用于带有jdk的java opendjdk,然后导出这个模块

sudo dnf安装java-1.8.0-openjdk-devel


导出JDK=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-8.fc29.x86_64遵循以下五个简单易行的步骤。它应该在以下方面发挥作用:

根据您的操作系统从Oracle网站下载JDK。提取并将其保存在文件夹中

转到java安装文件夹:通过键入java,然后在jR.< /p>之前考虑路径,可以找到文件夹。 Java安装文件夹示例:/usr/lib/jvm/Java-1.8.0-openjdk-1.8.0.222.b10-0.el6_10.x86_64/jre/bin/Java

考虑:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el6_10.x86_64/

在考虑的jdk路径之后创建以下目录

sudo mkdir/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el6_10.x86_64/jdk

将从步骤1下载的文件粘贴到此文件夹中: 您提取的jdk应该类似于以下内容:

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el6_10.x86_64/jdk/jdk1.8.0_221

转到IntelliJ安装的bin文件夹并搜索idea.sh 示例:/home/cloudera/intellij/idea-IC-192.6817.14/bin/idea.sh

搜索此行:JAVA_BIN=$JDK/BIN/JAVA 您可以使用vi打开文件,然后按escape,然后按/然后按粘贴JAVA_BIN=$JDK/BIN/JAVA来搜索该文件。添加我们刚刚在这行顶部创建的JDK路径:

示例:JDK=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el6_10.x86_64/JDK/jdk1.8.0_221

运行IntelliJ启动的idea.sh文件并享受编码。 sh/home/cloudera/intellij/idea-IC-192.6817.14/bin/idea.sh


基本上,我们为IntelliJ提供了一个JDK参考。

安装openjdk-8-JDK很有帮助!是的,实际上你只需要JDK,而不是JRE。所以我只安装JDK,而不是两个em。
JAVA_HOME="/home/programs/jdk1.8.0_162"
cd /home/programs/jdk1.8.0_162/bin
./idea.sh