ほとんどのユーザーにリーチするには、デスクトップアプリケーションにどのバージョンのJavaを使用すればよいですか?[閉まっている]


15

ほとんどのエンドユーザーがJava 8よりも古いバージョンを使用していると想定するのは正しいですか?私のアプリケーションを使用するために人々に強制的にアップグレードさせたくないので、たとえそれが新しいバージョンの利点を自分に適用できない場合であっても、最初からJava 7または6を使用するように計画する必要があります開発者として?


6
この質問に対する答えは、1年でどのように関連しますか?5年?たとえば、Java 7と比較してJava 8について質問することは問題ありませんが、2つのバージョンのどちらを使用するかを質問することは、質問自体が時間内に行き詰まっているという事実について、このサイトにとって本質的な質問ではありません製品の推奨を求める。

ユーザーは誰で、どのようなアプリケーションですか?世界のおばあちゃん向けのアプリケーションは、IT担当者向けのユーティリティアプリケーションとは異なります。
フライハイト

Javaは(Windozeの.NETとは異なり)プリインストールされていないため、アプリケーションにJRE(のサブセット)を含める必要があります。そのため、最高のものを使用できます。つまり、最新の安定バージョンを使用します。(つまり、現在— JRE 1.8のバージョン)
表示名

セキュリティのベストプラクティスは、Javaに許容できないリスクをインストールすることを考慮することであるため、唯一の合理的な答えは「まったくない」ことだと思います。
R .. GitHub停止ヘルプICE

@R ..、そのような「ベストプラクティス」をどこで聞いたのですか?
アルトゥーロトーレスサンチェス

回答:


44

インストールされたJREが正しいことを信頼することは、すべてのデスクトップが特定のバージョンにロックされている管理された企業環境の外では意味がありません。その場合、その環境を管理する人にこの質問をする必要があります。

大衆市場のJavaデスクトップアプリケーションの場合、使用するJREをバンドルするインストーラーまたはランチャーを使用するか、Java Web Start(JAWS)をセットアップする必要があります

バンドルされたJREを実際に物理的に配布する場合は、ライセンス条項に従う必要があることに注意してください。私は弁護士ではありませんが、ほとんどの目的で問題になることはありません。あなたが法務チームを持っている状況にいるなら、もちろん彼らを通り越してそれを走らせるべきです。

開発者または他の技術指向ツールの場合、一般的にMaven Centralでjarを公開することが望ましいため、配布とダウンロードは完全に自動化されています。これは、古いバージョンにロックダウンされた企業での使用を可能にするため、古いバージョンのJavaに固執することの利点の1つです。

しかし、今日開始されたプロジェクトについてはそれほど心配する必要はありません。

最後に、上記のすべての作業が多すぎる場合は、ソースをgithubまたはbitbucketで公開し、ユーザーが自分でビルドできるようにします。


3
タイムリーな質問に対するタイムレスな回答、素晴らしい。そのようなことを好む人のために、JREの無料の代替バージョンを配布できることを付け加えます。それを移植可能なリリースにすることもできます。
StarWeaver

1
JREをバンドルするにはライセンスが必要であり、アプリケーションがインターネットにアクセスする場合は非常に危険です。
acelent

詳しく説明してください。つまり、営利を目的とせずにソフトウェアをリリースする場合でも、あるいはオープンソースである場合でも、JREのライセンスを取得する必要がありますか?
アンドレアスハートマン


1

考慮すべきもう1つの点は、プロジェクトのサイズに応じて、どのバージョンのJavaが廃止され、何が廃止されるかということです。ほとんどの大規模なプロジェクトでは、現在の「ベータ版/アルファ版」バージョン(この場合はJava 8)で作業するのが賢明です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.