IronPdfEngineはすべてのPDF操作を行うgRPCサーバーです — 作成、編集、読み取り、およびレンダリング。 IronPDF for Javaライブラリはこのサーバーを囲むAPIラッパーです:Javaコードが任意のIronPDFメソッドを呼び出すと、IronPdfEngineが作業を実行します。 デフォルトでは、IronPDF for JavaはIronPdfEngineをローカルサブプロセスとして起動し、そのライフサイクルを自動管理します。 より高度なデプロイメントのために — 共有マイクロサービス、Dockerコンテナ、またはエアギャップネットワーク — IronPdfEngineを独立したリモートサーバーとして実行できます。

クイックスタート:Java用のIronPdfEngineをセットアップ

各バージョンの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>
XML

初回ダウンロード後、バイナリはローカルにキャッシュされ、後続の実行はネットワーク呼び出しなしで開始します。

オプション1 — ランタイムダウンロード:トレードオフ
利点制限
最小のアプリケーションパッケージサイズ 初回実行時にインターネットアクセスが必要
一つのアーティファクトから複数のターゲットプラットフォームをサポート バイナリのダウンロード中は起動が遅くなります

オプション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>
XML

ターゲット環境のプラットフォームアーティファクトを追加します。 ターゲットプラットフォーム用のアーティファクトのみをインストールします — 各アーティファクトは大きく、すべてをインストールするとビルドが不必要に膨らみます。

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>
XML

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>
XML

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>
XML

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>
XML

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>
XML

ご注意ironpdf および ironpdf-engine-xxx-xxx の依存関係バージョンは完全に一致する必要があります。 バージョン文字列は、IronPDF for Javaリリースを指し、IronPdfEngineの内部バージョン番号ではありません。

オプション2 — バンドルされた依存関係:トレードオフ
利点制限
起動が高速 - ダウンロードステップなし アプリケーションパッケージが大きくなります
インストール後にインターネットアクセスは不要 ターゲットプラットフォームを明示的に指定する必要があります
エアギャップ環境での一貫した動作 複数のプラットフォームアーティファクトのインストールによりビルドサイズが大幅に膨らみます

リモート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);
JAVA

返されたバージョン文字列に一致する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);
JAVA

これら2行の実行後、アプリケーション内のすべてのIronPDF呼び出しはリモートサーバーにルートされます。 pom.xml では、IronPdfEngine のローカルサブプロセスは起動されず、プラットフォーム固有のエンジンへの依存も不要です。

ヒント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");
    }
}
JAVA

レンダリングされたPDFはgRPCを介してJavaプロセスに返され、ローカルに保存されます。 リモートサーバーはすべてのChromeベースのレンダリング、フォントの読み込み、およびリソースの解決を処理します。

次のステップは何ですか?

IronPdfEngineが構成されると、IronPDF for Javaのフル機能セットが利用可能になります — HTMLからPDFへの変換、PDF編集、マージ、スタンピングなど。

よくある質問

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バイナリをダウンロードします。その後のダウンロードでは、インターネットアクセスは必要ありません。バンドルされたプラットフォーム依存関係を追加するか、リモートモードを使用する場合、どの時点でもインターネットは必要ありません。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
バージョン: 2026.5 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか?
サンプルを実行するHTML が PDF に変換されるのを確認します。