配布したいMySqlデータベースを使用するこのJavaアプリケーションがあります。私の懸念は、このアプリケーションを配布するには、ターゲットシステムにJREとMySqlServerの両方がインストールされていることを前提とする必要があるということです。
アプリケーションをJREおよびMySqlサーバーにバンドルして、それらがまだシステムに存在しない場合に、アプリがそれらをインストールしてからアプリケーションを実行できるようにする方法はありますか?
配布したいMySqlデータベースを使用するこのJavaアプリケーションがあります。私の懸念は、このアプリケーションを配布するには、ターゲットシステムにJREとMySqlServerの両方がインストールされていることを前提とする必要があるということです。
アプリケーションをJREおよびMySqlサーバーにバンドルして、それらがまだシステムに存在しない場合に、アプリがそれらをインストールしてからアプリケーションを実行できるようにする方法はありますか?
いいえ、ライセンスのために、それらをバンドルしてインストールの一部として提供するべきではありません。
これは、OracleJREとMySQLの両方に適用されます。
@StephenCコメントの後に更新します。
特定の状況でJREを再配布することは可能であるように思われますが、Stephen Cの回答で説明されている理由により、JREは無効になっています。私はこれらの問題が実際に発生するのを見てきました。
更新を終了
「最も安全な」パス(ライセンスの問題に関連して最も安全なパス)が何であるかわかりません。
おそらく、必要なコンポーネントの一部としてその場でそれらをダウンロードするインストーラーは大丈夫です。私がこれについて間違っている場合は、ここの友人が私を修正することができます
特定の条件に従う場合は、JREをJavaアプリケーションにバンドルできます。(私が正しく思い出せば、これはJREをダウンロードするときに同意する標準のSun / Oracleライセンスでカバーされます。このフレーズは「バイナリ配布」または「バイナリ再配布」だと思います。)
アップデート
確認したところ、記憶は正しいです。「JavaSEプラットフォーム製品およびJavaFXのOracleバイナリコードライセンス契約」の「補足ライセンス条項」セクションを参照してください。(段落Cは、シナリオに最も直接的に適用できます。)そして、上で述べたように、条件が適用されます。
更新を終了
MySQLの無料バージョンをバンドルすることが許可されているとは思いません。
個人的には、Javaでこれを行うのはお勧めしません。理由は次のとおりです。