在ubuntu 12.04上的eclipse中缺少带有oracle-java7-jdk的库

时间:2012-04-26 01:28:04

标签: java eclipse ubuntu

我最近安装了ubuntu 12.04最终测试版

从webupd8 ppa安装oracle jdk后,启动eclipse失败,抱怨缺少共享库。

Can't load library: /home/bob/.swt/lib/linux/x86_64/libswt-gtk-3740.so

我四处搜寻,发现了这个问题:Eclipse cannot load SWT libraries

正如OP建议的那样,我尝试切换到open-jdk,这非常有用。但问题是,我正在开发一个不支持openjdk的项目。

我也尝试了第二个解决方案(scott的一个,它只是在〜/ .swt / lib / linux / x86_64 /中创建了/ usr / lib / jni / ...的符号链接)。 Eclipse启动,一切都很好,但它仍然错过了一些库;这是我尝试运行项目时得到的结果:

Caused by: java.lang.UnsatisfiedLinkError: /tmp/libgdx/1352105074/libjogl_awt-linux64.so: libjawt.so: cannot open shared object file: No such file or directory

我知道libjawt.so就在我的电脑上:

$ locate libjawt.so
/usr/lib/jvm/java-6-openjdk-amd64/jre/lib/amd64/libjawt.so
/usr/lib/jvm/java-7-oracle/jre/lib/amd64/libjawt.so

但是eclipse或java似乎认为库应该放在〜/ .swt / lib / linux / x86_64中,是不是很奇怪?

3 个答案:

答案 0 :(得分:0)

根据我的理解,

Eclipse启动时默认为自己的内部JRE。我推荐以下内容:

  1. 修改CLASSPATH变量以包含所需库的路径;
  2. 将您的JAVA_HOME设置为与实际的JAVA_HOME相匹配;
  3. 使用以下信息通过自定义eclipse.ini来设置Eclipse从所需的JVM启动:http://wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F#eclipse.ini
  4. 此外,您可以在启动Eclipse时指定-classpath选项吗?

答案 1 :(得分:0)

尝试下载最新版本的Eclipse并运行它。出于某种原因,它工作正常。我刚刚放弃了我的旧版Eclipse。我希望这适用于其他人!

答案 2 :(得分:0)

请注意,此处有两个 Java运行时。用于运行Eclipse本身的那个,以及您想要运行代码的那个。它们不一定是一样的!

我建议

现在您自己编写代码,并使用Oracle Java运行。