4

http://www.freebsdfoundation.org/downloads/java.shtmlのFreeBSD7.2ボックス(PFSenseを実行)にJavaJREとJavaJDKの両方があります。

find / -name gives me output like:
/usr/local/diablo-jre1.6.0/bin/java
/usr/local/diablo-jdk1.6.0/bin/java
/usr/local/diablo-jdk1.6.0/jre/bin/java

だから私は次のように/usr/ local /binへのリンクを作成します:

 ln /usr/local/diablo-jre1.6.0/bin/java /usr/local/bin/java

そして今、私は

# rehash
# java
Error: could not find libjava.so
Error: could not find Java 2 Runtime Environment.

SOOOOOO、Ubuntuの/ etc /jvmに似た特定のJavaVMをオンにするために使用できるツールがあるかどうか疑問に思っていますか?

4

3 に答える 3

3

アプリケーションは、/usr/local/diablo-jre1.6.0/bin/javaおそらくアプリケーション自体libjava.soの場所を基準にして配置されます。javaそのハードリンクへのハードリンクを作成し、javaそのハードリンクを介して実行することにより、おそらくそのメカニズムを破ったことになります。

提案:

  • 検索/usr/local/diablo-jre1.6.0/binパスを配置します。
  • javaリンクの代わりにのエイリアスを作成します。
  • ハードリンクをシンボリックリンクに置き換えます。つまり、ln -sそれを作成するために使用します。
于 2011-01-25T02:36:11.757 に答える
2

FreeBSDパッケージは、インストールされているさまざまなJVMやJAVA_HOMEなどを認識しているラッパースクリプトを/ usr / local / bin / javaにインストールする必要があります。パッケージの代わりに誤ってtarballをダウンロードしましたか?

何がpkg_info | grep jdk得られますか?

于 2011-01-25T09:38:20.163 に答える
0

これが刑務所にある場合は、/ procを一時的に移動して、Javaライブラリがどこにあるかを見つけようとしないようにする必要があります。これに噛まれた!

于 2015-01-29T09:58:10.693 に答える