2

最近、ubuntu 12.04 最終ベータ版をインストールしました

webupd8 ppa から oracle jdk をインストールした後、Eclipse の起動に失敗し、共有ライブラリが見つからないというエラーが表示されました。

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

私は周りを検索し、この質問を見つけました:EclipseはSWTライブラリをロードできません

OPが推奨するように、open-jdkに切り替えてみましたが、うまくいきました。ただし、問題は、openjdk をサポートしていないプロジェクトに取り組んでいることです。

2番目の解決策も試しました(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 に配置する必要があると考えているようですが、それは奇妙ではありませんか?

4

3 に答える 3

0

ここでは、 2 つのJava ランタイムが使用されていることに注意してください。Eclipse 自体を実行するために使用するものと、コードを実行するものです。同じである必要はありません。

私は提案します

これで、独自のコードがコンパイルされ、Oracle Java で実行されます。

于 2016-02-23T13:33:28.697 に答える
0

私が理解しているように、起動時のEclipseはデフォルトで独自の内部JREになります。次のことをお勧めします。

  1. CLASSPATH 変数を変更して、目的のライブラリへのパスを含めます。
  2. JAVA_HOME を実際の JAVA_HOME と一致するように設定します。
  3. 次の情報を使用して eclipse.ini をカスタマイズすることにより、目的の JVM から起動するように Eclipse をセットアップします
  4. また、Eclipse起動時に-classpathオプションを指定できますか?
于 2012-04-26T01:51:50.140 に答える
0

最新バージョンの Eclipse をダウンロードして実行してみてください。なぜかうまくいきます。古いバージョンの Eclipse を捨てました。これが他の人にも役立つことを願っています!

于 2012-04-29T18:29:33.143 に答える