无法在debian上运行sqldeveloper

时间:2010-08-09 18:57:29

标签: java oracle oracle10g debian oracle-sqldeveloper

我在debian(lenny)上安装了jdk1.6.0_21和sqldeveloper(使用alien)。现在,当我运行sqldeveloper时,它会询问J2SE安装路径,在我输入jdk路径后,它会退出并显示以下错误消息。

Oracle SQL Developer
 Copyright (c) 2008, Oracle. All rights reserved.  

Type the full pathname of a J2SE installation (or Ctrl-C to quit), the path will be stored in ~/.sqldeveloper/jdk
/usr/java/jdk1.6.0_21
/opt/sqldeveloper/sqldeveloper/bin/../../ide/bin/launcher.sh: line 430: /root/.sqldeveloper/jdk: No such file or directory
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
Error: SQL Developer can't recognize the JDK version

9 个答案:

答案 0 :(得分:2)

您可能希望发出以下命令:

echo '/usr/lib/jvm/java-6-sun' > ~/.sqldeveloper/jdk

答案 1 :(得分:2)

也可以

/usr/lib/jvm/java-6-openjdk

答案 2 :(得分:2)

在sqldeveloper主页上有一个名为sqldeveloper.sh(或datamodeler.sh)的文件添加了以下行:

unset GNOME_DESKTOP_SESSION_ID

应该是这样的:

#!/bin/bash
unset GNOME_DESKTOP_SESSION_ID
cd "`dirname $0`"/sqldeveloper/bin && bash sqldeveloper $*

这就是全部。 阿迪奥斯

答案 3 :(得分:1)

此错误消息可能有多种原因:

  • VM无法找到rt.jar文件
  • VM和rt.jar文件不匹配(例如,VM是版本1.6.x,rt.jar是版本1.4)
  • JDK未正确安装

以下命令的输出是什么?

which java
java -version
/usr/java/jdk1.6.0_21/bin/java -version

答案 4 :(得分:1)

最后我发现了问题,JDK安装不正确。在安装完好后,我安装了一份新的OpenJDK副本。

答案 5 :(得分:1)

当我以root身份安装我的SQL Developer时,我也一样,但是将它作为其他用户使用..在我看来,Sql开发人员看起来像make文件〜/ .sqldeveloper / .... root:root权限,但在家庭目录中使用sudo用户..它很奇怪,但很容易修复

 chown youruser:yourgroup -R ~/.sqldeveloper

答案 6 :(得分:0)

如果您收到几条似乎没有任何意义的错误消息,请先查看第一个错误。在这种情况下,那将是:

/root/.sqldeveloper/jdk: No such file or directory

看起来sqldeveloper正在尝试编写该文件,但失败了。你是以root身份运行吗?如果没有,你能想到为什么sqldeveloper会认为你的主目录是/ root /?

答案 7 :(得分:0)

看起来两个java版本(通过/ usr / bin / java和JDK 1.6.0_21可以访问的OpenJDK混淆了)。我只能猜测它是如何解决的:

  • 运行update-alternatives --set java /usr/java/jdk1.6.0_21/bin/java
  • 尝试卸载OpenJDK
  • 可能,你需要做两件事

答案 8 :(得分:0)

仅替换/opt/sqldeveloper/sqldeveloper/bin/sqldeveloper.conf

自: SetJavaHome ../../ jdk

于: SetJavaHome / usr / lib / jvm / java-7-openjdk-amd64