2012-07-05 6 views
5

Mac OS用のjdk7u5をインストールした後、私は "普通の"ユーザとrootのために異なるjavaバージョンを手に入れました。mac os Java版のrootとは異なる

java -versionは私7.

sudo java -versionを与えてくれ、私は /System/Library/Frameworks/JavaVM.framework/Versions/にまで見てきた6

を与えるいくつかのリンクがあることがわかりました。私は実際のディレクトリへのリンクを解決した後、私は全体のパスでそれをもう一度試しました。

/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java -version - > 7

sudo /System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java -version - javacのと同じ> 6

あなたは私が助けてくれることを願っています!

+0

あなたの質問は何ですか? rootユーザーをJava 7に設定しますか? – Failsafe

+0

私はrootのjavaが普通のユーザーと同じであることを望みます。私の場合、「sudo java -version」もバージョン7でなければなりません。 –

+0

JAVA_HOMEをJavaの更新版に設定してみてください。 – Failsafe

答えて

5

OSX/usr/bin/javaでは、/Applications/Utilities/Java Preferences.appを使用して選択したものを見て、使用するJavaバージョンを探します。使用しているファイルもOracleアップデーターによって更新されます。

バージョンを手動でドラッグしてJava 1.7を設定する必要があるため、実行するユーザーにはこれをルートとして設定しないで設定します。 rootに設定するには、アプリをsudo /Applications/Utilities/Java\ Preferences.app/Contents/MacOS/Java\ Preferencesとして実行し、1.7を先頭に移動しました。

私がファイルを見ることができる限り、アプリのアップデートは~/Library/Preferences/ByHost/com.apple.java.JavaPreferences.<hex number>.plistにあります。<hex number>はマシン関連です。ルートのホームディレクトリは/ var/rootなので/var/root/Library/Preferences/ByHost/com.apple.java.JavaPreferences.<hex number>.plist

+0

あなたの助けてくれてありがとう! :)それはうまく動作します! –

+0

ちょうど、腐って走っているのには1.6が必要だと願っていますが、AppleがJava – Mark

-1

指定したリンクで使用されるJavaバージョンは、JAVA_VERSION環境変数によって異なります。この変数がユーザーに設定されていても、sudoでクリアされますか?その場合、ユーザーに対して明示的に設定を解除するか、rootに設定すると、それらを同期させるのに役立ちます。もちろん、/A/を実際のバージョンで置き換えることもできます。

+0

'JAVA_VERSION'セットはありません。 '/ usr/bin/java'は'/usr/bin/java'にリンクしています。フレームワーク/ JavaVM。フレームワーク/バージョン/現在/コマンド/ java' –

0

Mac OS X 10.7.5 + JRE 1.6.0_43 + JDK 1.7.0_17で同じ問題が発生しました。 sudoを持つ

  • のjava -version => 1.7
  • にsudoのjava -version => 1.6

オープンJavaコントロールパネル、これは問題が修正されています。

  • sudoのは/ usr/bin/javaws -viewer
関連する問題