EGLAR ファイルとバイナリー・プロジェクトの概要

EGLAR ファイルは、コンパイル済みの中間表現 (IR) バージョンの EGL パーツが 1 つ以上入っている zip ファイルです。

EGLAR ファイルに格納されているパーツから出力を生成して、デプロイできます。さらに、それらのパーツを使用して、EGLAR ファイルの外部にある EGL ソース・コードからの参照を解決することも可能です。 例えば、EGLAR ファイルにインターフェース・パーツが含まれているとすれば、その定義を使用して、そのパーツに基づく変数を作成できます。さらに、EGLAR ファイルで定義されているウィジェット・タイプを EGL Rich UI エディター用のパレットに表示することも可能になります。

EGLAR ファイルの一般的な利点を以下にまとめます。
EGLAR ファイルを作成するには、プロジェクトを以下の 2 つの方法のいずれかでエクスポートします。
下の表に、この 2 つの方式の違いを示します。
表 1.
フィーチャー バイナリー・プロジェクト スタンドアロン EGLAR ファイル
ソース・コードが使用可能 (読み取り専用) になるか はい いいえ (ただし、スタンドアロン機能は例外)
EGL デバッガーでコードにステップイントゥできるか はい いいえ
EGL Software Development Kit (EGLSDK) からコードにアクセスできるか いいえ はい

この 2 つの方式について、以下の各セクションで詳しく説明します。

スタンドアロン EGLAR ファイル

スタンドアロン EGLAR ファイルには、IR ファイルと他のリソース (グラフィックス・ファイルや生成出力など) を組み込みます。EGLAR ファイルにソース・コードを組み込むことはできません (ただし、小さな例外として、スタンドアロン機能のパーツを組み込むことは可能です)。ソース・コードが存在しないので、デバッガーは、あたかも IR ファイルが生成出力であるかのようにコードをスキップします。

注: EGLAR ファイルを受け取るユーザーは、スタンドアロン機能のパーツを表示できるようになります。スタンドアロン機能のパーツが含まれていることが多いのは、VisualAge® Generator からマイグレーションしたコードです。
スタンドアロン EGLAR ファイルにアクセスするには、そのアクセスができるようにプロジェクトの EGL ビルド・パスを設定します。あるいは、スタンドアロン EGLAR ファイルを非バイナリー・プロジェクトにインポートする、という方法もあります (この後の説明では、非バイナリー・プロジェクトのことを「プロジェクト B」と表記します)。この第 2 の方法の場合、EGLAR ファイルは、いくつかの点でプロジェクトと同じように扱われます。
  • EGLAR ファイルを同じプロジェクト (プロジェクト B) 内の他のコードで利用できるのは、そのファイルをそのプロジェクト自身の EGL ビルド・パスに組み込んだ場合に限られます。
  • EGLAR ファイルを他のプロジェクト (プロジェクト A) で利用できるのは、プロジェクト A の EGL ビルド・パスを設定するときに、その EGLAR ファイルを明示的に組み込んだ場合です。このオプションは、ファイル・システムから EGLAR ファイルにアクセスする場合とよく似ています。プロジェクト A は、プロジェクト B の設定にかかわりなく、その 2 つのプロジェクトが同じワークスペースに存在している限り、その EGLAR ファイルにアクセスできます。
  • プロジェクト B のプロジェクト・コード全体 (EGLAR ファイルも含む) を他のプロジェクト (プロジェクト A) で利用できるのは、プロジェクト B の EGL ビルド・パスを設定するときに、EGLAR ファイルを「エクスポート」するようにし、プロジェクト A の EGL ビルド・パスを設定するときに、プロジェクト A からプロジェクト B にアクセスできるようにした場合に限られます。

ビルド・パスの設定と、EGLAR ファイルのコードを間接的に供用する方法の詳細については、『EGL ビルド・パスの編集』を参照してください。EGL Software Development Kit (EGLSDK) から EGLAR ファイルにアクセスできるように eglpath オプションを設定する方法の詳細については、『EGLSDK』を参照してください。

EGL ビルド・パスから参照されているスタンドアロン EGLAR ファイルは、パーツの解決や生成で利用できます。 そのファイルがインポートされていない場合は、そのファイルからパーツを生成するために、デフォルトのビルド記述子を利用できないので、生成ウィザードを使用する必要があります。一方、そのファイルがインポートされていれば、デフォルトのビルド記述子を利用でき、最も近い組み込みのプロジェクト、パッケージ、フォルダーのいずれかでその記述子が指定されています。

スタンドアロン EGLAR ファイルを使用すると、ワークベンチの検索メカニズム (メニュー・オプション「検索」 > 「検索」) にいくらかの影響があります。
  • EGL 検索では、ワークスペースの IR ファイルに含まれているパーツや他の要素を検出できます。EGLAR ファイルのインポートは、この検索に影響します。
  • ファイル検索では、ワークスペース内のソース・ファイルを検出できます。EGLAR ファイルのインポートは、その EGLAR ファイルにスタンドアロン機能のパーツのソース・コードが含まれていても、この検索には影響しません。

ファイル・システム内の EGLAR ファイルに対するビルド・パス参照は、EGL 検索にもファイル検索にも影響しません。ワークベンチのパーツ・リスト機能もパーツ参照機能も、EGLAR ファイルとの関連では使用できません。

バイナリー・プロジェクト

エクスポート・タスクでは、非バイナリー・プロジェクトからバイナリー・プロジェクトを構成します。そのタスクでは、バイナリー・プロジェクトのビルド・パスに EGLAR ファイルを組み込み、その EGLAR ファイルをエクスポートして、そのバイナリー・プロジェクトを参照する各種プロジェクトからその EGLAR ファイルにアクセスできるようにします。

バイナリー・プロジェクトに組み込む EGLAR ファイルは 1 つだけです。その EGLAR ファイルには IR ファイルだけを組み込みます。プロジェクトには常にソース・コードを組み込みます。プロジェクトに生成出力やグラフィックス・ファイルなどのリソースを組み込むこともできます。

ソース・ファイルが存在するので、以下の機能を実行できます。
  • ソース・ファイルを EGL エディターで開くことができます。ソース・コードは読み取り専用です。ソース・ファイルを直接開くか、関連する IR ファイルをクリックすることによって、ソース・コードにアクセスできます。
  • デバッガーでソース・ファイル内の各パーツにステップイントゥできます。

バイナリー・プロジェクトにアクセスするには、そのプロジェクトをワークスペースにインポートします。これにより、バイナリー・プロジェクトを生成操作やデプロイメント操作で利用できるようになります。また、パーツの解決のために、他のプロジェクトへの EGL ビルド・パスを、このバイナリー・プロジェクトにアクセスできるように設定することもできます。

ビルド・パスの設定と、バイナリー・プロジェクトのコードを間接的に供用する方法の詳細については、『EGL ビルド・パスの編集』を参照してください。EGL Software Development Kit (EGLSDK) でプロジェクトを利用することはできません。

生成ウィザードを使用しないでバイナリー・プロジェクトからパーツを生成する場合のビルド記述子は、そのバイナリー・プロジェクトのデフォルトのビルド記述子になります。

バイナリー・プロジェクト内の IR ファイルを再作成する必要が生じた場合は、そのバイナリー・プロジェクトの基になっているソース・プロジェクトを更新し、そのソース・プロジェクトをバイナリー・プロジェクトとして再エクスポートする必要があります。この操作が必要になる可能性があるのは、バイナリー・プロジェクトが他のソース・プロジェクトに格納されているパーツに依存している状況で、それらのパーツの一部の特性が変更された場合です。

バイナリー・プロジェクトは、EGL 検索とファイル検索の両方の対象になります。

該当する制約事項を以下にまとめます。
  • EGL ビルド・パスでは、バイナリー・プロジェクトをプロジェクトとして参照してください。 組み込みの EGLAR ファイルを直接参照しないでください。
  • バイナリー・プロジェクトは、本来、読み取り専用であるべきですが、一部のワークベンチ機能では、更新が可能です。そうではあっても、バイナリー・プロジェクトを更新しないようにしてください。更新した場合は、予想とは異なる動作になる可能性が高いからです。 例えば、スタンドアロン EGLAR ファイルをバイナリー・プロジェクトにインポートしないでください。

フィードバック