IronPdfEngineはすべてのPDF操作を行うgRPCサーバーです — 作成、編集、読み取り、およびレンダリング。 IronPDF for Javaライブラリはこのサーバーを囲むAPIラッパーです:Javaコードが任意のIronPDFメソッドを呼び出すと、IronPdfEngineが作業を実行します。 デフォルトでは、IronPDF for JavaはIronPdfEngineをローカルサブプロセスとして起動し、そのライフサイクルを自動管理します。 より高度なデプロイメントのために — 共有マイクロサービス、Dockerコンテナ、またはエアギャップネットワーク — IronPdfEngineを独立したリモートサーバーとして実行できます。
クイックスタート:Java用のIronPdfEngineをセットアップ
Java用のIronPdfEngineのセットアップ方法
- IronPDFの依存関係を
pom.xmlファイルに追加します - ローカルモードを選択:ランタイムダウンロードまたはバンドルされた依存関係
- リモートモードの場合、
setIronPdfEngineHostを使用してホストアドレスを設定します - リモートモードの場合、
setIronPdfEnginePortを使用してポートを設定します - 任意のIronPDFレンダリングメソッドを呼び出します — IronPdfEngineがPDF作業を処理します
各バージョンのIronPDF for Javaは対応するバージョンのIronPdfEngineを必要とします。クロスバージョンの互換性はサポートされていません。 必要なバージョンを確認するには Settings.getIronPdfEngineVersion() を使用してください。)]
どのデプロイメントモードを使用すべきですか?
IronPdfEngineはローカルとリモートの2つのデプロイメントアプローチをサポートします。 それらの選択は、アプリケーションのアーキテクチャに依存します。
ローカルモード(デフォルト)は、スタンドアロンアプリケーション、デスクトップツール、単一サーバーデプロイメントに適しています。 IronPDF for Javaは、IronPdfEngineをサブプロセスとして自動的に起動します — 別のインフラストラクチャは必要ありません。 ローカルモードには、IronPdfEngineバイナリを取得するための2つのオプションがあります:最初の実行時にダウンロードするか、Maven依存関係としてバンドルするかです。
リモートモードは、一度のIronPdfEngineインスタンスが複数のアプリケーションノードをサポートする分散システムに適しています。 また、Dockerベースのデプロイメント、Kubernetesポッド、実行時にバイナリをダウンロードできないエアギャップネットワーク、PDF処理の中央集権化によってサービスごとのオーバーヘッドを減少させるシナリオで推奨されるアプローチです。
以下のセクションでは、両方のモードを詳細に説明しています。
ローカルIronPdfEngineはどのようにセットアップしますか?
IronPdfEngineをローカルで実行するための2つのオプションがあります。 どちらも同じランタイム動作を生成します — 違いはエンジンバイナリがターゲットマシンに到着するタイミングと方法です。
オプション1:ランタイムでIronPdfEngineをダウンロード
デフォルトでは、コア依存関係 ironpdf を追加した後、IronPDF は初回実行時にホストプラットフォーム(例:Windows x64 または Linux x64)を検出し、インターネットから対応する IronPdfEngine バイナリをダウンロードします。
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>20xx.xx.xx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>20xx.xx.xx</version>
</dependency>
初回ダウンロード後、バイナリはローカルにキャッシュされ、後続の実行はネットワーク呼び出しなしで開始します。
| 利点 | 制限 |
|---|---|
| 最小のアプリケーションパッケージサイズ | 初回実行時にインターネットアクセスが必要 |
| 一つのアーティファクトから複数のターゲットプラットフォームをサポート | バイナリのダウンロード中は起動が遅くなります |
オプション2:依存関係としてIronPdfEngineをバンドル(推奨)
IronPDF Javaは、IronPdfEngineを依存関係内の.zipファイルとしてバンドルした、プラットフォーム固有のMavenアーティファクトを提供します。 ライブラリは自動的に抽出して使用します — 実行時のネットワーク呼び出しは必要ありません。
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
ターゲット環境のプラットフォームアーティファクトを追加します。 ターゲットプラットフォーム用のアーティファクトのみをインストールします — 各アーティファクトは大きく、すべてをインストールするとビルドが不必要に膨らみます。
Windows x64
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-windows-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-windows-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
Windows x86
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-windows-x86</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-windows-x86</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
Linux x64
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-linux-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-linux-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
macOS x64
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-macos-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-macos-x64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
macOS ARM(Apple Silicon)
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-macos-arm64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
//:path=pom.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf-engine-macos-arm64</artifactId>
<version>20xx.xx.xxxx</version>
</dependency>
ironpdf および ironpdf-engine-xxx-xxx の依存関係バージョンは完全に一致する必要があります。 バージョン文字列は、IronPDF for Javaリリースを指し、IronPdfEngineの内部バージョン番号ではありません。| 利点 | 制限 |
|---|---|
| 起動が高速 - ダウンロードステップなし | アプリケーションパッケージが大きくなります |
| インストール後にインターネットアクセスは不要 | ターゲットプラットフォームを明示的に指定する必要があります |
| エアギャップ環境での一貫した動作 | 複数のプラットフォームアーティファクトのインストールによりビルドサイズが大幅に膨らみます |
リモートIronPdfEngineにどのように接続しますか?
リモートモードでは、複数のアプリケーションインスタンスが1つのIronPdfEngineサーバーをgRPC経由で共有できます。 これは、マイクロサービスアーキテクチャ、コンテナ化デプロイメント、およびPDF処理が中央化されている環境で一般的です。
必要なIronPdfEngineバージョンをどのように確認しますか?
バージョンの一致は厳密です — IronPDF for Java 2024.2.2はIronPdfEngine 2024.2.2が必要です。 サーバーをデプロイする前に、必要なバージョンを確認するには getIronPdfEngineVersion を使用してください:
//:path=Main.java
// Retrieve the IronPdfEngine version required by this Java library build
String ironPdfEngineVersion = Settings.getIronPdfEngineVersion();
System.out.println("Required IronPdfEngine version: " + ironPdfEngineVersion);
//:path=Main.java
// Retrieve the IronPdfEngine version required by this Java library build
String ironPdfEngineVersion = Settings.getIronPdfEngineVersion();
System.out.println("Required IronPdfEngine version: " + ironPdfEngineVersion);
返されたバージョン文字列に一致するIronPdfEngine Dockerイメージまたはバイナリをデプロイまたはプルします。
リモート接続をどのように設定しますか?
IronPdfEngineが123.456.7.8:33350で実行されているものと仮定してください。 任意のIronPDFメソッドを呼び出す前にホストとポートを設定してください。 ベストプラクティスは、PDF操作の前にアプリケーション起動時にこれらの呼び出しを行うことです。
//:path=Main.java
// Configure IronPDF for Java to connect to a remote IronPdfEngine instance
com.ironsoftware.ironpdf.Settings.setIronPdfEngineHost("123.456.7.8");
com.ironsoftware.ironpdf.Settings.setIronPdfEnginePort(33350);
//:path=Main.java
// Configure IronPDF for Java to connect to a remote IronPdfEngine instance
com.ironsoftware.ironpdf.Settings.setIronPdfEngineHost("123.456.7.8");
com.ironsoftware.ironpdf.Settings.setIronPdfEnginePort(33350);
これら2行の実行後、アプリケーション内のすべてのIronPDF呼び出しはリモートサーバーにルートされます。 pom.xml では、IronPdfEngine のローカルサブプロセスは起動されず、プラットフォーム固有のエンジンへの依存も不要です。
33350 が開いていることを確認してください。完全なリモートセットアップとはどのようなものですか?
以下の例は、リモートIronPdfEngineインスタンスに接続し、HTML文字列をPDFファイルにレンダリングします — ローカルモードで使用されるAPIと同じで、構成のみが異なります。
//:path=Main.java
import com.ironsoftware.ironpdf.*;
public class Main {
public static void main(String[] args) throws Exception {
// Point the library to the remote IronPdfEngine server
Settings.setIronPdfEngineHost("123.456.7.8");
Settings.setIronPdfEnginePort(33350);
// Render HTML to PDF — IronPdfEngine on the remote host performs the work
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from remote IronPdfEngine</h1>");
pdf.saveAs("output.pdf");
}
}
//:path=Main.java
import com.ironsoftware.ironpdf.*;
public class Main {
public static void main(String[] args) throws Exception {
// Point the library to the remote IronPdfEngine server
Settings.setIronPdfEngineHost("123.456.7.8");
Settings.setIronPdfEnginePort(33350);
// Render HTML to PDF — IronPdfEngine on the remote host performs the work
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from remote IronPdfEngine</h1>");
pdf.saveAs("output.pdf");
}
}
レンダリングされたPDFはgRPCを介してJavaプロセスに返され、ローカルに保存されます。 リモートサーバーはすべてのChromeベースのレンダリング、フォントの読み込み、およびリソースの解決を処理します。
次のステップは何ですか?
IronPdfEngineが構成されると、IronPDF for Javaのフル機能セットが利用可能になります — HTMLからPDFへの変換、PDF編集、マージ、スタンピングなど。
- JavaでHTMLをPDFにレンダリングを開始する — 最も一般的な変換シナリオのステップバイステップの例
- IronPDF for Javaのチュートリアルを探索する — ウォーターマーク、ヘッダーとフッター、フォーム、電子署名をカバーする詳細ガイド
- IronPDF for Javaをダウンロードして無料トライアルを開始する — 開発使用に時間制限なしのフル機能トライアル
- 本番展開用にライセンスを購入する — 永続オプションとサブスクリプションオプションがあり、ソースコードアクセス可能
よくある質問
IronPdfEngineとは何か、なぜIronPDF for Javaが必要か?
IronPdfEngineは、すべてのPDF操作を実行するgRPCサーバです(作成、編集、読み取り、レンダリング)。IronPDF for JavaはこのサーバのAPIラッパーであり、すべて for Javaメソッド呼び出しがIronPdfEngineによって処理されます。これがないと、JavaライブラリはPDF作業を行うことができません。
ローカルIronPdfEngineとリモートIronPdfEngineの違いは何ですか?
ローカルモードでは、Javaアプリケーションと同じマシン上でIronPdfEngineがサブプロセスとして起動し、追加のインフラは必要ありません。リモートモードは、gRPCを介してスタンドアロンのIronPdfEngineサーバーに接続し、マイクロサービス、Dockerデプロイ、および共有PDF処理ノードに適しています。
いつローカルの代わりにリモートIronPdfEngineを使用するべきですか?
複数のアプリケーションインスタンスが1つのPDF処理サーバーを共有する必要がある場合、KubernetesやDocker Compose環境でデプロイする場合、または実行時にバイナリをダウンロードできないエアギャップネットワークで実行する場合にリモートIronPdfEngineを使用します。
JavaでリモートIronPdfEngine接続を構成するにはどうすればよいですか?
アプリケーション起動時にSettings.setIronPdfEngineHost()を呼び出してサーバーのIPまたはホスト名を指定し、Settings.setIronPdfEnginePort()でポート番号を指定して、IronPDFのメソッドを呼び出す前に設定します。デフォルトのIronPdfEngineポートは33350です。
IronPdfEngineを依存関係としてバンドルするためには、どのMavenアーティファクトを使用すればよいですか?
デプロイターゲットに合ったプラットフォーム固有のアーティファクトを追加します。例として、Linuxサーバ用のironpdf-engine-linux-x64やWindows用のironpdf-engine-windows-x64があります。アーティファクトのバージョンはironpdfコア依存関係のバージョンと完全に一致している必要があります。
Javaライブラリが必要とするIronPdfEngineバージョンを確認するにはどうすればよいですか?
Javaコード内でSettings.getIronPdfEngineVersion()を呼び出します。それはデプロイするIronPdfEngineバイナリまたはDockerイメージと一致する正確なバージョン文字列を返します。
1つのプロジェクトで複数のプラットフォームエンジン依存関係をインストールできますか?
技術的には可能ですが、各アーティファクトは大きいため、1つ以上をインストールするとビルドが不必要に膨らみます。ターゲットデプロイメントプラットフォームと一致するアーティファクトのみをインストールしてください。
Java用IronPDFを使用するにはインターネット接続が必要ですか?
ランタイムダウンロードオプションを使用する場合のみ(pom.xmlにプラットフォーム固有の依存関係がない)。最初の実行時に、IronPDFはプラットフォーム用のIronPdfEngineバイナリをダウンロードします。その後のダウンロードでは、インターネットアクセスは必要ありません。バンドルされたプラットフォーム依存関係を追加するか、リモートモードを使用する場合、どの時点でもインターネットは必要ありません。


