標準的な方法はありますか?私はこれが多少プラットフォームに依存する可能性があることを認識しています。私たちの製品は現在Windows上でのみサポートされています - だから私はそれが私が今興味を持っていると思います。私が考えることができるのは、レジストリをスキャンするか、ファイルシステムをクロールすることだけです。ファイルシステムをスキャンすると、かなり時間がかかるように思えます。レジストリは信頼できない可能性があります。私は両方をするべきですか?その他の提案はありますか?私は運がないとこれを行うためのAPIを探してみました。私の箱にインストールされているJDK/JREの種類をプログラムで判断してください
10
A
答えて
3
まず、JAVA_HOME環境変数(JDK_HOMEのほうがはるかに少ないですが)を探してから、そのバージョンとJDKかJREかを判断します。
その後、代わりに場所を確認します。システムのプログラムファイルディレクトリを見つけてください(99.5%の時間であってもC:\ Program Filesであると仮定しないでください)。その下にある一般的なインストール場所(Javaなど)を探します。
私は網羅的な検索をしません。
このようにJDKを実際に探す必要がありますか? JDKの使いたいことをユーザーに尋ねるだけで、すでに見つけた簡単なものを示唆することはできませんか?
1
私はおそらく、インストールされたレジストリキーを探してデフォルトのの場所をクロールします(時間がかかりすぎないようにしてください)。
実行中のJVMなどのさまざまな詳細を出力する小さなJavaアプリケーションをバンドルする方法もあります。
34
関連する問題
- 1. JavaScriptを使用してファイルサイズを判断してください
- 2. 名前が種類だけでなく種類を形成する理由を教えてください。
- 3. websocket onmessageのパラメータの種類を教えてください。
- 4. Javaでパラメータ化された型を使用しないでその種類を参照してください
- 5. 私のサーバーの設計を批判してください
- 6. を追加してください。アイコンをボタンにゴミ箱
- 7. クロスプラットフォームのアプローチでドライブの種類を判断する方法
- 8. 私のLinuxマシンにlispをインストールしてください
- 9. どのPowerShellスナップインがインストールされているかをプログラムで判断する方法
- 10. .NETアセンブリがGACにインストールされているかどうかをプログラムで判断する方法
- 11. プログラムがLinuxにインストールされているかどうかをC++で判断する
- 12. インストールされているDirectXのバージョンを確認してください
- 13. システムクレデンシャルストレージにインストールされている証明書を確認してください。
- 14. nodejsを使用しているファイルの種類を確認してください。
- 15. Javaプログラムのインストール方法を教えてください。
- 16. のStructureMap:ネストされた依存関係の具体的な種類を選択してください
- 17. インストールされているアプリケーションのリストをプログラムでAndroid上で分類する
- 18. ブートストラップ:MSIのバージョンがインストールされているか確認してください
- 19. iphone - アプリがインストールされていることを確認してください
- 20. Skypeがインストールされていることを確認してください
- 21. 種類の文字列を混ぜて、煎茶の中に入れてください
- 22. msiが実行される前にインストールされている他のアプリケーションを確認してください
- 23. CoreData NSDateによって分類されないでくださいか?コードで
- 24. 別々のフォルダでモデルを中断してください
- 25. アプリケーションがインストールされているかアンインストールされているかを確認してください
- 26. このPHPログインスクリプトを批判してください。
- 27. PDFリーダーがインストールされているか確認してください。
- 28. 私たちのプログラムがうまくいくと判断するにはどうすればいいですか?
- 29. 私はRuby 1.9.3とRubygems 1.8.15をインストールしてください。
- 30. ビデオを壁のポストにプログラムで追加してください
あなたは徹底的な調査をしないだろう、なぜCletusはあなたが守ることができますか?直感的に私はここで同意するが、私は強い理由を探している。 –
徹底的な検索では、ハードドライブにjava.exeまたはjavac.exe(ウィンドウを想定)というファイルがないか検索する必要があります。 –
上記の2つの変数に加えて、C:\ Program Files \と%PATH%環境変数に検索を制限することをお勧めします。 –