Maven を使用した IBM JZOS 依存関係の管理

開発者がJava™アプリケーションのビルドスクリプトを書くとき、Mavenなどのビルドツールチェインを使用して、'IBM® Semeru Runtime® Certified Edition for z/OS®で提供されるJZOSライブラリの依存関係を解決することができます。 ビルド・ツールチェーンは、Maven 中央リポジトリーまたはエンタープライズ・ミラー・サーバーからライブラリーを取得できます。

ほとんどのJava統合開発環境(IDE)や、JenkinsTravis CIなどの自動化ツールは、Mavenをサポートしている。 このサポートにより、開発中のパイプラインへの z/OS 用 Java アプリケーションのコンパイル、ビルド、およびデプロイメントとの統合が容易になります。

重要: Maven Central で使用可能な JZOS .jar ファイルは、スタブ .jar ファイルです。このファイルは、ビルドおよびコンパイルの目的でのみ使用できます。 この .jar ファイルは、JZOS API のランタイム・テスト用ではありません。

使用可能な JZOS 成果物

以下の表に、 Maven Centralで使用可能な JZOS 成果物を示します。

表 1. Maven Central で使用可能な JZOS 成果物
グループ ID 成果物ID 説明
com.ibm.jzos ibm.jzos Java Batch Launcher and Toolkit for z/OS (JZOS) は、従来のバッチ環境で実行され、 z/OS システム・サービスにアクセスする z/OS Java アプリケーションの開発に役立つツール・セットです。

Maven Central 上のバージョンは、JZOS .jar ファイルのスタブ・バージョンであり、アプリケーションのビルドおよびコンパイルにのみ使用されます。

Maven について詳しくは、 Apache Maven Project Web サイトを参照してください。

Maven を使用した Java 依存関係の宣言

開発者がMavenビルド・スクリプトを作成する際、IBM Semeru Runtime Certified Editionが提供する依存関係を参照できます。
前提条件
Mavenを使用してJZOS用のJavaアプリケーションを開発する前に、以下の項目が真であることを確認してください:
  • Maven がワークステーションまたは IDE にインストールされている。
  • アプリケーションを組み込むために Maven モジュールを作成したか、既存の Java プロジェクトを Maven モジュールに変換しました。 ほとんどの Java IDE はこの機能をサポートしています。

依存関係の宣言方法

依存関係は、Maven モジュールの pom.xml ファイルで宣言されます。
<dependencies>
    <dependency>
        <groupId>com.ibm.jzos</groupId>
        <artifactId>ibm.jzos</artifactId>
        <version>17.0.19.0</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

ibm.jzosJZOSライブラリのすべてのバージョンは、Maven CentralでグループIDが com.ibm.jzos 、アーティファクトIDが として公開されています。

IBM Semeru Runtime Certified Edition for z/OS のバージョンが異なれば、JZOS ライブラリーのバージョンも異なります。 アプリケーションでは、お使いの Semeru のバージョンに対応するMavenアーティファクトを使用していることを確認してください。 たとえば、使用しているJavaのバージョンが 17.0.19.0 の場合、バージョン 17.0.19.0 のjarファイル ibm.jzos を使用する必要があります。

ibm.jzosアーティファクトの依存関係を'<scope>provided</scope>に指定することで、JZOSライブラリがアプリケーションのランタイムクラスパスに含まれないようにすることができる。 正しいライブラリーは、'IBM Semeru Runtime Certified Edition for z/OS でアプリケーションを実行したときにランタイムから提供される。

重要: 参照される依存関係ごとに正しい Maven スコープを使用してください。 正しいスコープは、実行時の衝突を避け、アプリケーションのサイズを小さくすることができる。
注: Maven Central に表示されるスニペットは自動生成されるため、 <scope>import</scope>などの正しい Maven ディレクティブが表示されない場合があります。 このトピックの構文に従って、依存関係が正しく宣言されていることを確認してください。 より新しいバージョンが使用可能である可能性があるため、Maven Central ですべての使用可能なバージョンを確認してください。

JZOS Maven Jarリリースバージョン

次の表は、さまざまなJZOS Maven Jarファイルの変更ログを示します。
表 2. 変更ログ - Java '17用 JZOS Maven Jar リリースバージョン
バージョン番号 説明
3.1.3.1 JZOS Maven Jarファイルの初期リリース。
3.1.3.2 Visual Studio Codeの使用中に発生するJavadoc生成の問題が解決されました。
3.1.3.3

すべてのメソッドで標準化された例外処理が実装されている。

すべてのJavaファイルに対する'ibm.os390への依存が削除された。
4.0.0.0 SMF121の変更を適用するために、必要なJavaファイルが追加、更新される。 File クラスと Stream クラスが AutoCloseable を実装しました。
17.0.19.0+ Java 17専用にリリースされたJZOS Maven JAR。

次のステップ

JZOS Java API を使用したアプリケーションの作成

JZOS は、従来のバッチ環境で実行されるか、 z/OS システム・サービスにアクセスする z/OS 用の Java アプリケーションの開発を支援します。 詳細については、 IBM の「JZOS バッチランチャー ユーザーガイド 」または IBM の「JZOS ツールキット ユーザーガイド」 を参照してください。

APIのドキュメントについては、 APIリファレンスガイドをご覧ください。

サンプルを試す

JZOSは、開発者が使い始められるように、説明書一式を提供している。 詳細については、 「JZOS バッチランチャーのインストール」 を参照してください。

JZOSライブラリを使用したJavaプログラムのサンプルは、こちらからダウンロードできます: JZOSサンプル

アプリケーションのビルドとデプロイ

開発者は、他の Maven モジュールをビルドしてデプロイするのと同じ方法で、アプリケーションをビルドし、それをビルド・ツールチェーンに統合することができます。 詳細については、Mavenのドキュメントにある 「POMの概要」 を参照してください。