3 minutes
End-of-Life Technology: How to Drive Innovation Without Compromising Stability
When legacy systems approach end-of-life (EOL), enterprise IT teams typically face the choice of moving forward at all costs […]
Payara Microでは、Webアプリケーションを自己完結型で簡単に実行することができます。2016年5月のPayara Serverリリースからは、WARファイルの内容とPayara Microを構成するクラスやリソースを束ねる “Uber JAR” を作成する簡単な方法があります。
この “Uber” Jarは、Dockerコンテナ内でアプリケーションを実行するための最良の方法ではないことに注意してください。アプリケーションに小さなコード変更を加えるたびに、バイナリ全体のアップデートが必要になるためです。より良い方法は、Payara Microインスタンスを起動して、インストールが必要なアプリケーションを指定することです。詳細については Payara Micro Docker Image documentation をご覧ください。
(最終更新日 2021/04/06)
実装
まず、従来の方法(例えばMavenなど)でWebアプリケーションを生成します。次に、このアプリケーションを –outputUberJar オプションを有効にして Payara Micro へデプロイし、結果のJARファイルを生成します。
java -jar payara-micro-5.2021.1.jar --deploy test-app.war --outputUberJar test-app.jar
以下のような出力が得られます。
Apr 06, 2021 9:09:47 AM fish.payara.micro.impl.UberJarCreator buildUberJar
INFO: Building Uber Jar... test-app.jar
Apr 06, 2021 9:09:48 AM fish.payara.micro.impl.UberJarCreator buildUberJar
INFO: Built Uber Jar basic-servlet.jar in 450 (ms)
そして最後に、このUber jarを作成すると、簡単なJavaコマンドでアプリケーションを実行することができます。
java -jar test-app.jar
これにより、Payara Microのインスタンスが起動し、元のWebアプリケーションをデプロイします。
では、このアプリケーションが使用するHTTPポート (デフォルトでは8080) を変更したい場合はどうすればよいのでしょうか。あるいは、クラスタリング機能を無効することはできるのでしょうか。Uber jarの生成には、互換性のあるPayara Microの設定オプションをすべて渡すことができ、アプリケーションの実行時には、これらのオプションがサーバー・インスタンスの設定として使用されます。
java -jar payara-micro-5.2021.1.jar --deploy test-app.war --outputUberJar test-app.jar --port 9898 --noCluster
java -jar payara-micro-5.2021.1.jar --deploy test-app-1.war --deploy test-app-2.war --outputUberJar test-app.jar
[2021-04-06T09:56:53.923+0000] [] [INFO] [] [PayaraMicro] [tid: _ThreadID=1 _ThreadName=main] [timeMillis: 1617693676410] [levelValue: 800] Deployed 2 archive(s)
Share:
3 minutes
When legacy systems approach end-of-life (EOL), enterprise IT teams typically face the choice of moving forward at all costs […]
3 minutes
Working with enterprise Java databases can sometimes feel like swimming upstream. Jakarta EE 11’s Jakarta Data helps developers glide […]
2 minutes
The recent releases of Spring Framework 7.0 and Spring Data 2025.1.0 mark an important milestone for the Java ecosystem, […]