web-dev-qa-db-ja.com

Javaデフォルトアプリケーションとして認識されない

この記事 に従ってJavaをインストールしたばかりで、Java -versionが表示されます

Java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

update-alternatives --config Java 'はこれを返します。

There are 2 choices for the alternative Java (providing /usr/bin/Java).

  Selection    Path                                  Priority   Status
------------------------------------------------------------
  0            /usr/bin/gij-4.6                       1046      auto mode
  1            /usr/bin/gij-4.6                       1046      manual mode
* 2            /usr/local/Java/jdk1.7.0_07/bin/Java   1         manual mode

Press enter to keep the current choice[*], or type selection number: 

update-alternatives --config javac(またはjavaws)も同様に返します。

ただし、.jarファイルをクリックして「アプリケーションで開く」に移動すると、デフォルトのアプリケーションメニューにJavaがリストされません。

  • Java this way をインストールしようとしましたが、コマンドのupdate-alternatives部分で返されました:

    / etc/alternatives/[Java、javac、javaws]はぶら下がり、最適な選択で更新されます

  • Java -jar file.jarが機能するので、私はcan Javaを使用することを確認しました。

  • 私はそれを言及するだろうと思った、私は前にそうしなかった理由がわからないが、.jarファイルを右クリックすると、Java 7ランタイムがそこにもリストされていない、それファイルマネージャはプログラムとしてそれを認識していないようですが、そこにあり、動作します...

問題の原因

多くの実験と調査を行った結果、問題の原因-.desktop/usr/share/applicationsファイルがないことがわかりました。エントリを手動で作成するために使用できる回答を投稿しましたが、前述のように、より良い方法があると確信しているため推奨しません。

3
codesmith

私はそれを行う方法を一緒にパッチしましたが、.desktopエントリを作成する推奨される方法ではありません(より良い方法が必要です)。

1)gksu geditを使用してroot権限でターミナルからGeditを開きます

2).desktopから/usr/share/applicationsファイルを開き、新しいファイルにコピーします。

3)名前、コメント、画像を好みに合わせて編集します。

4)コマンドをJava -jar %uに変更します%uを忘れないでください

5)保存

6)nautilusで.jarファイルを右クリックし、properties>open with>show all applicationsを選択して、新しいエントリを選択し、addまたはset as defaultを選択します。

2
codesmith

記録のためだけに、これを修正する簡単な方法があります。

OpenJDK Java 7をインストールした後、/usr/share/applicationsに移動した場合、openjdk用の.desktopファイルが既に存在するので、必要なことは最終行を変更するだけです

"NoDisplay=true" to "NoDisplay=false"

そして、デフォルトのプログラムリストに表示されます。

そのようなあなたの投稿をジャックしてすみません。

1
RedX

/ usr/share/applicationsにアクセスして、ファイル「defaults.list」を探してください。このファイルをgeditまたはエディターで開き、81行目に移動します。application/ x-jar = file-roller.desktop、およびJavaアーカイブの次の行です。両方の行のfile-roller.desktopをopenjdk-7-Java.desktopに変更し、ファイルを保存します。次に.jarファイルを実行するときに、ダブルクリックできます。

0

私もこの方法を使用し、wikihowの記事では2つのことを見逃していました。 .jarをダブルクリックしても何も実行されないため、これで問題が解決するかどうかはわかりませんが、試してみる価値はあります。

  1. すべてのJavaバイナリ(javac、javawなど)をupdate-alternatives --installコマンドのメインJavaバイナリにスレーブ化します。そうしないと、Javaバイナリのみが/ usr/bin/Javaにリンクされ、他のバイナリはリンクされません。 (ウィキハウは、それらが$ Java_HOMEにあり、$ Java_HOME/binがパスにある場合、システムがそれらを見つけると仮定していると思いますが、それについてはわかりません)。これにより、update-alternatives --remove-all Javaだけで済み、すべてのスレーブバイナリが自動的に含まれるため、アンインストールがはるかに簡単になります。

  2. gij-4.6およびリストされている他のものよりも優先度を高く設定し、低く設定しないでください。システムはデフォルトでその代わりに設定されます。優先度を1に設定します。これはupdate-alternativesが機能する方法の最低/最後です。少なくとも1047以上である必要があります。 1100を使用します。

スクリプトのインストール を試しました- この1つ を試し、セットアップのディレクトリの場所を変更します(/ usr /の代わりに/opt/Java/jdk/1.7.0_6を使用します)ローカル/ Java)。

注:スクリプトの最後の行では、manページを/usr/share/man/man.10としてインストールします。スクリプトを実行する前に、必ず/usr/share/manをチェックし、そこにman.10がまだないことを確認してください。ある場合は、スクリプトの行をman.11または次に大きい番号に変更します。

0
Kurtosis