GPLで許可されている独自のアプリケーションにOpenJDKをバンドルしていますか?


16

現在、Steamを介して配布される可能性が最も高いJavaでビデオゲームを作成しています。もちろん、この場合、多くのSteamユーザーにはJavaがまだインストールされていません。これが発生した場合、Javaをインストールする必要があることをユーザーに伝える有益なダイアログを表示する小さなネイティブランチャーを使用するか、単に自分のJavaランタイム環境(具体的にはOpenJDK 8)をゲームにバンドルします。私のゲームはクローズドソースになりますが、オープンソース(BSDライセンス)ゲームエンジンに基づいています。

OpenJDKのライセンスを調べました。GPLプロジェクトであるため、それにリンクするものはすべてGPLである必要があります。ただし、クラスパス例外もあります。リンク部分が適用されるかどうかは、コードがバンドルされているかどうかに関係なくリンクされていないためわかりません。私の知る限り、クラスパス例外はこのユースケースをカバーしていません。

Stack Overflowにも同様の質問がありますが、これはアプリケーションがOpenJDKで開発されている状況を指し、OpenJDKで配布することを指します。


4
OpenJDKライセンスを読んだり、同様の質問を探したりしましたか?この質問はあなた自身のソフトウェアのライセンスに関するものであるため、話題になっています。しかし、あなたの研究共有することはより良い答えを引き付けます。

はい、持っています。これを反映するように質問を編集しました。
john01dav


私はその質問を読み、答えです。同様のトピックに載っている以外に、どのようにこの質問に実際に関係するのかわかりません。
john01dav

OpenJDKである必要がありますか?他の一部のJavaランタイムでは、GPL用語をディストリビューションに追加せずにバイナリランタイムを配布できます。例:java.com/en/download/faq/distribution.xml
Brandin

回答:


5

これは重要な質問です。特に、OracleがJava 9、10、および11からライセンスおよび販売契約を変更したという事実を考慮する場合は重要です。

JDK- > Java Development Kit。

JDKは「ランタイム」ディストリビューションではありません-JDKは開発者のディストリビューションであり、たまたまバンドルの一部としてランタイムが含まれています。JDKは開発者によって「自由に配布可能」ではなく、開発者にライセンスされています。JDKのEULAを読むと、再配布に制限があることがわかります。

JRE- > Java ランタイムエンジン。

JREのEULAに準拠している場合、ランタイムは(ほとんどの場合)無料でダウンロードおよび配布できます。

JDKおよびJREは、互いに独立して個別にライセンスおよび配布されます。

最後に、一般にJDKの「パーツ」またはコンポーネントの配布も許可されていないことを知っておく必要があります。これは、インストール済みのJDKからJREを抽出し、個別に配布またはバンドルすることを想定していないことを意味します。

ベストプラクティスは、開発を展開から分離することです。

  • JDKで開発し、プロジェクトをデプロイします
  • デプロイメントはJREに依存しています

-1

私がライセンスで読んだものから、あなたは自由にプログラムを再配布することができ、配布することさえ請求することができます。

しかし、Javaゲームをリリースした個人的な経験があるので(有料ではありません)、ディストリビューションソース(Javaダウンロードへのリンクを提供)でJavaランタイム環境が必要であることをユーザーに伝える方が良いと思いますユーザーにエラーを与えます。


2
ユーザーがダウンロードできる方が良い理由についていくつかの理由を説明できますか?
ziggystar

3
さて、すでに(複数の)JREがインストールされています。「万が一に備えて」各アプリケーションに150 MB以上のバンドルを持たせることは、私にはかなり無意味に思えます。また、アプリ固有のJREがあると、次のような問題が発生します:「私のJREにはこれらの調整があります。なぜあなたのアプリで機能しないのですか?」stackoverflow.com/a/21417887/19746
Piskvor
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.