0

私はJavaアプリケーション(多くの外部.jar依存関係と画像への依存関係を持つ非常に大きなアプリケーション)を持っており、たとえば誰かがダブルクリックして実行できるようにパッケージ化する必要があります。またはそのような簡単なもの。

Java Persistenceを使用するため、JavaプロジェクトのPersistence.xmlファイルで指定されているSQL接続が必要です。

どうすればこれをパッケージ化できますか?私が考えていた:

  1. インストールプロセスでは、ユーザーがMySQLをインストールしていることを検証し、インストールしていない場合は、インストールするように指示する必要があります。
  2. インストールプロセスでは、ユーザーに任意のデータベースのクレデンシャルを入力するように求め、実行時にPersistence.xmlを更新できます。

これらは私が持っていた2つのアイデアでした...しかし、この問題に対する既知の解決策があるかどうかはわかりませんでした。どんな助けでも大歓迎です!

4

3 に答える 3

1

H2のような組み込みデータベースソリューションを見てみるべきだと思います。また、mavenのシャドウイングまたはjarプラグインを使用してアプリケーションをパッケージ化し、jar-with-dependenciesプロファイルをアクティブ化することもできます。

これにより、クライアントマシンで実行されているデータベースサーバーをチェックする必要がなくなり、アプリケーションを1つの優れたJARにバンドルする適切な手段が提供されますが、少し大きくなります。

Mavenは、Javaアプリケーションをビルドし、コードを実行するために特別に設計されたビルドエコシステムおよびツールセットです。

プラグインを開発するための豊富なAPIがあり、多くの開発者がこの機能を利用しています。アプリケーションの構築(および起動)とパッケージ化、およびアプリケーションの依存関係の管理を支援するためのプラグインは多数あります。

Mavenのシャドウイングは、の形式で提供されます。ここmaven-shade-pluginから入手できます。これは、すべての依存関係から単一のJARファイルを作成するのに役立ちます。また、依存関係のあるプロファイルjarを提供するがあります。こちらからもアクセスできます。maven-jar-plugin

一方、H2は本格的なRDBMSです。これはWebサイトです:http ://www.h2database.com/html/main.html 、そしてここにチュートリアルがあります。

データベースの埋め込みに関する情報は、次の場所にあります。

また、非常に簡単なセットアップであり、非常に豊富な機能と使いやすいAPIを提供するH2 / Hibernate/Springの組み合わせを使用することをお勧めします。

これがお役に立てば幸いです:)

于 2012-10-20T02:49:45.770 に答える
0

多くの依存関係をチェックし、多くの異なるプラットフォーム(私が望むと思います)で実行される洗練されたインストーラーを構築することは複雑です。

インストーラージェネレーターを確認することをお勧めします。Javaに最適なインストールツールは何ですか?を参照してください。

私がいくつかの製品で見たもう1つの方法は、Perlのようなスクリプト言語で(非GUI)インストーラーまたはコンフィギュレーターを作成することです。

于 2012-10-20T02:54:34.837 に答える
0

ANTを使用してインストーラーを作成しましたが、GUIがありません。また、Iz Pack(良いオプション)を使ったので、どれだけ賢くしたいか、使うことになっているのか、技術者でない人などにもよると思います。

于 2012-10-20T05:07:58.437 に答える