2014-07-16 162 views
0

我正在运行redhat-release-client-6Client-6.5.0.2.el6.x86_64,并安装了Oracle SQL Developer以及我的Java JDK,并且都“工作”但是当我尝试运行时sqldeveloper我被要求关联JDK路径。我花了近2个小时的时间阅读和研究这个问题,但我仍然无法弄清楚。JDK关联问题

[[email protected] bin]# readlink -f $(which java) 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/java 
[[email protected] bin]# sqldeveloper 

Oracle SQL Developer 
Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. 

Type the full pathname of a JDK installation (or Ctrl-C to quit), the path will be stored in /root/.sqldeveloper/4.0.0/product.conf 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/java 
Error: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/java/bin/java not found 
Type the full pathname of a JDK installation (or Ctrl-C to quit), the path will be stored in /root/.sqldeveloper/4.0.0/product.conf 
^C[[email protected] bin]# 
[[email protected] bin]# locate java | grep '/java$' 
/etc/java 
/etc/alternatives/java 
/etc/pki/java 
/etc/pki/ca-trust/extracted/java 
/usr/java 
/usr/bin/java 
/usr/java/jre1.7.0_55/bin/java 
/usr/lib/java 
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java 
/usr/lib64/libreoffice/share/Scripts/java 
/usr/lib64/libreoffice/ure/share/java 
/usr/share/java 
/usr/share/doc/db4-devel-4.7.25/java 
/usr/share/doc/db4-devel-4.7.25/ref/java 
/var/lib/alternatives/java 
[[email protected] bin]# 
+0

*关联JDK路径*是什么意思?你有没有尝试过设置'JAVA_HOME'? –

+0

将路径放在说出'键入JDK安装的完整路径名(或Ctrl-C退出)时,路径将存储在/ root/.sqldeveloper/4.0.0/product.conf' – Joshua

回答

2

尝试从要包括的路径取出/斌/ java的 - 只是给JRE基本目录(/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre)。它会在您提供的路径中查找bin/java - 您无需手动添加。

您可以从错误中看到程序正在追加一个额外的/ bin/java到它应该在的末尾。

+0

因为它说'输入JDK安装的完整路径名',你应该给出JDK的路径,而不是JRE。 – Aurand

+1

根据我的经验,SQL Developer正在JDK中寻找JRE,无论出于何种原因。 – radar

1

您指定的路径JRE,你需要的JDK -

/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/ 

如果你想使用Java 7,你需要得到一个JDK。您的确切错误

/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre/bin/java/bin/java 

是基本目录,但sqldeveloper添加bin/java到您的条目(所以你不能)。

+0

当我尝试给它一条路径时,它会向我输入的内容添加正斜杠: '输入JDK安装的完整路径名(或Ctrl-C退出),路径将存储在/root/.sqldeveloper/中4.0.0/product.conf /usr/lib/jvm/java-1.6.0 -openjdk-1.6.0.0.x86_64 /' '错误:/usr/lib/jvm/java-1.6.0-openjdk- 1.6.0.0.x86_64 // bin/java not found' – Joshua

+0

@Joshua尝试添加jre,然后双斜线在那里就没事了。如果“/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre”有效,那么说明文字的措辞很差。对于Java 7,请根据您的需要尝试“/usr/java/jre1.7.0_55”或“/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65.x86_64/jre”。 –

+0

它告诉我在我的/root/.sqldeveloper/4.0.0/product.conf中添加'SetSkipJ2SDKCheck true',当我这样做时打开SQLDeveloper,所以我们会看到。谢谢。 – Joshua