English Japanese
English Japanese

プラグインフレームワーク

1. はじめに

リリース7までは、Robotプラグインの概念は非常にシンプルでした。プラグインとは、コンパイル済みのJavaコードであり、通常は単一のJARファイルの形をとっていました。少なくとも1つのJavaクラスがRobotプラグインインターフェースを拡張し、新機能やスクリプト拡張機能を提供する仕組みでした。これらを以後「フィーチャープラグイン」と呼びます。作成方法についてはこちらのドキュメントをご覧ください。

フィーチャープラグインは手動でインストールする必要がありました。ユーザーはJARファイルをダウンロードし、Robotインストールフォルダ内のplugins/フォルダにドロップするよう指示されていました。このフォルダは起動時にスキャンされ、そこで見つかったすべてのプラグインが有効化されました。プラグインはPluginsウィンドウで確認できます。

この方法はそれなりに妥当ですが、いくつかの制約があります。インストーラーもアンインストーラーもありません。依存関係、プラットフォーム要件、Robotの最小バージョンをチェックする仕組みもありません。プラグインのバージョン管理もありません。ユーザーは自分でプラグインを管理し、更新に気を配る必要があります。そして何より、この仕組みはコンパイル済みのJavaコードを前提として設計されていますが、実際にはほとんどのプラグインが他のファイルを必要とするか、そもそもJavaコードを含まないことさえあります。

Robotリリース7でChromiumおよびJDKプラグインが導入されたことで、プラグインはRobotのリリースと同等の扱いになりました。プラグインはUpdate & Upgradeウィンドウからダウンロード、インストール、アンインストールできます。バージョン、依存関係、プラットフォーム要件のチェック機能が備わっており、プラグインにはフィーチャープラグインを含め、あらゆるものを含めることができます。混同を避けるため、この新しい形式をインストール可能プラグインと呼ぶことにします。

update-plugins7.png


フィーチャープラグインと同様に、インストール可能プラグインのフレームワークも汎用的かつ公開されています。次の章では、このフレームワークを活用してRobotの拡張機能を作成し、組織内、あるいはサードパーティの顧客にも透過的に配布する方法について説明します。

2. プラグインの例

プラグインフレームワークの原理を説明するため、簡単なプラグインを作成します。ここでは、Feature Plugin Frameworkドキュメントの付録に記載されている2つのフィーチャープラグインの例と、Java Scriptsドキュメントの第6章で説明されているJavaテストスクリプトの例を使用します。次の3つのクラスを用意します。

  • com.tplan.robot.scripting.commands.impl.ConsoleMessageCommandクラスは、「Msg」という新しいTPRスクリプト言語コマンドを提供します

  • pluginexamples.GuiPluginExampleクラスは、Robotの「Tools」メニューとツールバーに、「Hello」という新しいメニュー項目とツールバーボタンをインストールします。

  • scripts.Verifyクラスは、テストスクリプトからファイルの存在を確認できるJavaテストスクリプトです。

このコードは事前にコンパイル済みで、3つのクラスをJARファイルとして提供しています。こちらからダウンロードできます。

動作を確認するには、ダウンロードしたアーカイブからJARファイルを展開し、Robotインストール先のplugins/ディレクトリに配置します。次にRobotを起動または再起動し、以下を確認してください。

  • ツールバーには「Hello」 ボタンがあります。また、「Tools」メニューにも対応するメニュー項目があります。選択すると簡単なメッセージウィンドウが開きます。

  • TPRテストスクリプトで「Msg」コマンドを使用すると、コンソールにメッセージを出力できます。コマンドを実行した後、メッセージを確認するにはHelp→Log Viewerウィンドウを使用してください。

  • scripts.Verifyスクリプトは、Runスクリプトクラスセレクター(右側の「...」ボタン)から選択できます。

plugin-jar-test.png


JARファイルを作成することで、3つの機能を持つフィーチャープラグインを実質的に作成したことになります。次に、同じ機能を持つインストール可能プラグインを作成します。

3. プラグインの構造

インストール可能プラグインのアーカイブは、Robotインストールディレクトリに展開する単純なZIPファイルです。Linux/UnixおよびMac OS Xのプラグインではファイルのパーミッションを維持する必要がある場合があり、その場合ZIPには必要なファイルをすべて含む単一のTARファイルが格納されます。

アーカイブには、ディレクトリ構造を含む実際のプラグインファイルとプラグインディスクリプタが含まれます。これはプラグインを記述する必須のJSONファイルで、plugins/ディレクトリに配置し、<pluginId>.jsonという名前を付ける必要があります。ここで<pluginId>は、プラグインを識別する一意のId(名前)です。

まずプラグインファイルから始めましょう。新しい空のディレクトリを作成し、そこに移動します。次にplugins/という名前のサブディレクトリを作成し、そこにJARファイルをコピーします。

Unknown Attachment

次に、プラグインディスクリプタを作成します。


3.1 プラグインディスクリプタ

ディスクリプタを作成する前に、プラグインの一意の識別子(Id)を選択する必要があります。ファイル名として使用できる文字であれば、どの文字でも使用できます。名前や会社名などのプレフィックスを付けるなどして、一意になる文字列を使用することをお勧めします。この例では、次のIdを使用します。

  • tplan-plugin-examples

Idは重要な役割を果たします。ディスクリプタファイルはこのIdにちなんで名付ける必要があります。Robotがこのプラグインがインストールされているかを確認する必要がある場合、plugins/tplan-plugin-examples.jsonディスクリプタファイルを探します。また、Robotがプラグインの新しいバージョンが利用可能かどうかを確認する際にもこのIdが使用されます。

1つのプラグインについて複数のOS版を作成する場合は、それぞれ異なるIdを使用してください。このプラグインでMS WindowsとMac OS用に別々のバージョンが必要な場合、tplan-plugin-examples-winとtplan-plugin-examples-macを使用することになります。

Robot 7以降には、プラグインディスクリプタを生成するためのコマンドラインサポートが含まれています。プラグインファイルが格納されたフォルダを第1引数に、生成先のJSONファイルを第2引数に指定します。Robotインストールフォルダに移動し、以下を実行してください。

C:\Program Files (x86)\T-Plan\Robot> java -cp .\* com.tplan.robot.update.UpdateManager F:\MyPlugin F:\MyPlugin\plugins\tplan-plugin-examples.json

JSONファイルは次のようになります。

JSON
{
  "uniqueId": "tplan-plugin-examples",
  "version": "<Version>",
  "names": {
    "en": "<English Name>"
  },
  "descriptions": {
    "en": "<English Description>"
  },
  "messagesBeforeInstall": {
    "en": "<Optional English Message To Display Before Install>"
  },
  "messagesAfterInstall": {
    "en": "<Optional English Message To Display After Install>"
  },
  "messagesBeforeUpdate": {
    "en": "<Optional English Message To Display Before Update>"
  },
  "messagesBeforeDelete": {
    "en": "<Optional English Message To Display Before Delete>"
  },
  "vendorName": "T-Plan Ltd",
  "vendorHomePage": "http://www.t-plan.com",
  "minimumRobotVersion": "7.0",
  "supportContact": "http://www.t-plan.com/support.html",
  "date": "2022-10-04",
  "mainPath": "",
  "startupRunnable": "",
  "restartRequired": false,
  "windows": true,
  "mac": true,
  "linux": true,
  "architectures": [
    "amd64"
  ],
  "keywords": "",
  "group": "<GroupCode>",
  "canUpdate": true,
  "canDelete": true,
  "testClasses": "",
  "helpLink": "",
  "files": {
    "plugins/plugin-examples.jar": "2f3793f1",
    "plugins/plugin-examples.json": "f2958fd"
  }
}

プラグインの機能に合わせて、いくつかの属性値を更新する必要があります。UTF-8に対応したテキストエディタを使用してください。

属性

許容値

説明

uniqueId

文字列。使用できる文字はファイル名と同じです。

このIdは一意であり、.json拡張子を除いたJSONファイル名と一致している必要があります。プラグインを識別するために使用されます。

version

数字とピリオドで構成される文字列。例:1.0や5.3.2

プラグインのバージョンです。

names

英語(「en」)を必須とし、
2文字の
ISO-639-1言語コードで識別されるその他の言語を任意で追加できる文字列のマップ

デフォルトの英語プラグイン名(プレーンテキスト)と、他言語向けのバリアントです。

descriptions

英語(「en」)を必須とし、
2文字の
ISO-639-1言語コードで識別されるその他の言語を任意で追加できる文字列のマップ

デフォルトの英語プラグイン説明と、他言語向けのバリアントです。プレーンテキストでも、
「<html><body>」で始まるHTMLでも構いません。

messagesBeforeInstall

各キーが2文字の
ISO-639-1言語コードである文字列のマップ

プラグインのインストール前にポップアップウィンドウに表示されるメッセージです。プレーンテキストでも、
「<html><body>」で始まるHTMLでも構いません。

messagesAfterInstall

各キーが2文字の
ISO-639-1言語コードである文字列のマップ

プラグインのインストール後にポップアップウィンドウに表示されるメッセージです。プレーンテキストまたはHTMLで記述できます。

messagesBeforeUpdate

各キーが2文字の
ISO-639-1言語コードである文字列のマップ

プラグインの更新前にポップアップウィンドウに表示されるメッセージです。通常、canUpdateがfalseに設定されている場合に、
プラグインを更新できない理由を説明するために使用されます。プレーンテキストでも、
「<html><body>」で始まるHTMLでも構いません。

messagesBeforeDelete

各キーが2文字の
ISO-639-1言語コードである文字列のマップ

プラグインの削除前にポップアップウィンドウに表示されるメッセージです。通常、canDeleteがfalseに設定されている場合に、
プラグインを削除できない理由を説明するために使用されます。プレーンテキストでも、
「<html><body>」で始まるHTMLでも構いません。

vendorName

文字列

ベンダー/プラグイン製作者の名前です。

vendorHomePage

文字列(HTTPリンク)

ベンダー/プラグイン製作者のホームページです。

minimumRobotVersion

数字とピリオドで構成される文字列。例:7.0や8.1

プラグインのインストールに必要なRobotの最小バージョンです。7.0以上を指定する必要があります。

supportContact

文字列(HTTPリンク)

ベンダー/プラグイン製作者のサポート窓口ページです。

date

yyyy-MM-dd形式の日付

プラグインのリリース日です。

mainPath

ファイルパス

内部使用のためのものです。空のままにしてください。

startupRunnable

文字列(Javaクラス名)

インストールフックです。Robotの起動時に初期化が必要なプラグインは、java.lang.Runnableインターフェースを実装したJavaクラスの完全修飾名
をここに設定できます。Robotは起動時にそのrun()メソッド
を実行します。これには、プラグインがそのクラスを含むJARファイルを、Robotのクラスパス上の場所(例えば、Robotのホームディレクトリ
やplugins/、libs/サブフォルダのいずれか)
にインストールしていることが前提となります。

restartRequired

ブール値(trueまたはfalse)

プラグインのインストール後にRobotの再起動が必要かどうかを示します。

windows
mac
linux

ブール値(trueまたはfalse)

プラグインがMS Windows、Mac OS X、Linux/Unixのいずれをサポートするかを指定します。

architectures

文字列の配列。使用できる値:
Microsoft Windows: x86またはamd64(32または64ビットOS)
Mac OS X: x86_64(Intel/AMD)、aarch64(M1)
Linux/Unix: x86またはamd64(32または64ビットOS)

サポート対象アーキテクチャ(任意)です。指定した場合、サポート対象OSのフラグ
と組み合わせてプラグインのインストールを制限するために使用されます。

ヒント: 現在のアーキテクチャを確認するには、Help→Aboutウィンドウを開き、System Information
タブを選択して、os.archプロパティの値を確認してください。

keywords

文字列

プラグインを特徴づける、任意のキーワードまたはカンマ区切りのキーワードリストです。この値は
プラグイン検索の目的で使用される場合があります。

group

文字列

プラグイングループ名(任意)です。Update & Upgrade
ウィンドウに表示されるフォルダ(ブランチ)の名前として使用されます。このフィールドには実際の名前を指定するか、既知のグループを識別する予約済みキーワードのいずれか
を指定できます。
「selenium」(Selenium Components)
「java」(Java Development Kit)
「script」(Scripting Language Enhancements)
「features」(Tools & Features)
「wda」(「iOS Over Xcode」接続用のWebDriverAgent)
「iosplugin」(「iOS Mirror」接続用のiOSプラグイン)
「other」(その他)

canUpdate
canDelete

ブール値(trueまたはfalse)

プラグインを更新および削除できるかどうかを示します。例えばJavaなど一部のプラグインは、Robotの実行中に使用されているため、Robotから更新または削除
できない場合があります。

testClassses

文字列

内部使用のためのものです。空のままにしてください。

helpLink

文字列(HTTPリンク)

オンラインのプラグインヘルプページ/ドキュメントへのリンク(任意)です。指定すると、Robotはそのサイトを指す新しいHelpメニュー項目
を追加します。

files

文字列のマップ

Robotが生成した、プラグインファイルとそのチェックサムのマップです。変更しないでください。

プラグインディスクリプタには、ファイルとそのチェックサムの一覧が含まれることに注意してください。ディスクリプタ自体を除くプラグイン内のファイルを変更した場合は、ディスクリプタを再作成するか、files属性を更新後の一覧で更新する必要があります。

この例のプラグインで必要な最小限の変更は以下のとおりです。

  • "version": "1.0" - プラグインのバージョンは仕様を満たす必要があります。

  • "restartRequired": true - このプラグインはplugin-examples.jarファイルの読み込みにJavaが必要であり、Robotの再起動が必要です。

  • "architectures": [] - すべてのアーキテクチャで動作することを示すため、現在のアーキテクチャを削除します。

また、名前、説明、グループ、インストール前に表示するメッセージなど、プラグインの見栄えを良くするための任意フィールドもいくつか更新します。これらは後ほど例のアーカイブで確認できます。

3.2 プラグインアーカイブ

プラグインアーカイブを作成するには、プラグインディレクトリを単一のZIPファイルに圧縮するだけです。Linux/UnixまたはMac OSでファイルのパーミッションを維持する必要がある場合は、任意の名前で単一のTARファイルを作成してからZIPに圧縮してください。この例のプラグインは次のようになります。

plugin-archive.png


このファイルはこちらからダウンロードできます。動作を確認するには、ファイルからインストールします。

  1. Tools→Update & Upgradeウィンドウを開きます

  2. File/URL Updateボタンを選択します

  3. フィールドにファイルパスを入力し、OKを選択します。

plugin-install.png


インストールが完了しRobotを再起動したら、プラグインで提供される3つの機能が表示されることを確認してください。

4. リリースディスクリプタ

すでにご覧いただいたとおり、プラグインアーカイブとRobotのリリースはUpdate & Upgradeウィンドウを通じて配布されます。ここに表示されるデータは「リリースディスクリプタ」から読み込まれます。これは既知のアドレスにあるHTTPサーバーに配置されるXMLファイルです。例えば、デフォルトのT-Planディスクリプタは以下にあります。

https://downloads.t-plan.com/releases/robot/descriptor.xml

このファイルは任意で暗号化されている場合があり、その場合は閲覧できないことがあります。

リリースディスクリプタは通常、Release Descriptor Editorのようなツールを使用して作成します。これについては後ほど説明します。ただし、単純なラベルや説明の更新など、手動での編集の方が効率的な場合もあります。そのため、ディスクリプタの基本的な形式を理解しておくと便利です。

空のリリースディスクリプタは非常にシンプルです。

XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<releases>

</releases>

releasesノードには、2種類の子ノードを含めることができます。

  • release - リリースを指定します。

  • descriptor - 別のディスクリプタの内容を読み込みます。例えば、<descriptor>https://downloads.t-plan.com/releases/robot/descriptor.xml</descriptor>のような子ノードを追加すると、すべてのT-Planリリースがディスクリプタに追加されます。

この例のプラグインのリリースディスクリプタを作成するには、まず空のディスクリプタXMLをUTF-8対応のエディタに貼り付けます。releaseノードを作成するには、プラグインディスクリプタの作成に使用したのと同じRobotのコマンドラインインターフェースを呼び出しますが、今回はプラグインファイルのパスのみを引数として指定します。

C:\Program Files (x86)\T-Plan\Robot> java -cp .\* com.tplan.robot.update.UpdateManager F:\MyPlugin\MyPlugin-1.0.zip  

  <release product="plugin" type="patch" id="tplan-plugin-example" group="other" platform="all" arch="all" label="T-Plan Installable Plugin Example" build="1.0" url="MyPlugin-1.0.zip" cksum="2913311261" size="5215" producer="T-Plan Ltd">
     <desc><![CDATA[ This plugin contains three simple features. ]]></desc>
  </release>


あとは、releaseノードをreleasesの内側にコピーするだけです。最初のディスクリプタは次のようになります。

XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<releases>
  <release product="plugin" type="patch" id="tplan-plugin-example" group="other" platform="all" arch="all" label="T-Plan Installable Plugin Example" build="1.0" url="MyPlugin-1.0.zip" cksum="2913311261" size="5215" producer="T-Plan Ltd">
     <desc><![CDATA[ This plugin contains three simple features. ]]></desc>
  </release>
</releases>


ディスクリプタには任意の数のreleaseノードを含めることができるため、別のプラグインや、同じプラグインの異なるバージョンについても同じ手順を繰り返すことができます。唯一の制限は、単一のディスクリプタ内の2つのノードが同じlabel属性を持つことはできないという点です。これは、Update & Upgradeウィンドウ が製品ツリーにラベルを表示するため、同じ名前の項目が複数あると区別できなくなるためです。このため、プラグイン名にはバージョンを付加することをお勧めします。例えば「T-Plan Installable Plugin Example v1.0」のようにします。

ディスクリプタをテストするには、Update & UpgradeウィンドウのFile/URL Upgrade機能を使用しますが、今回はフィールドにディスクリプタXMLファイルのパスを入力します。読み込みが完了すると、ウィンドウは次のようになります。

plugin-descriptor.png


以下を確認することをお勧めします。

  • ボタンが想定どおり有効になっていることを確認してください。例えばDownload & Installボタンです

  • Download & Installを選択してプラグインをインストールします。これにより、ファイルサイズ、チェックサム、パス(URL)属性が正しいことを確認できます。

以下は、releaseノードの属性と、それらがUpdate & Upgradeウィンドウの動作に与える影響についての完全な仕様です。

属性

許容値

説明

product

「plugin」または「robot」

「robot」はT-Plan Robotパッケージを表し、「plugin」はそれ以外のすべてを表します。Update & Upgrade
では、この値によって製品がRobotタブとPluginsタブのどちらに表示されるかが決まります。

type

「patch」または「os-specific」

「patch」は、内容をRobotのインストールフォルダに展開することでインストールできるZIPパッケージを示します。
「os-specific」は、それ以外のすべての製品タイプで、例えば製品をインストールするために実行が必要な
実行形式のインストーラーを持つパッケージなどです。この製品タイプでは、Download & Installボタンは常に無効になります。

id

文字列

プラグインの一意の識別子です。「robot」製品タイプには存在しません。プラグインがすでに
インストールされているかどうか、および更新可能かどうかを識別するために使用されます。

group

文字列

プラグイングループの識別子で、名前または既知グループのコードのいずれかです。Update & Upgradeツリー内でパッケージをどこに表示するか
を定義します。詳細はPlugin Descriptorの章を参照してください。この属性は省略可能です。
「robot」製品タイプでは無視されます。

platform

「」
または「all」
、「win」、「linux」
、「mac」のうち1つ以上をカンマ区切りで指定した値

OSサポートを指定します。属性を削除するか、空文字列「」または「all」を使用すると、サポートされているすべてのOS
をサポートすることを示します。それ以外の場合は、1つ以上のOSをカンマ区切りで指定します。
例えば「win」や「win,mac」のように指定します。Update & Upgradeウィンドウは、ローカルOSがこの値と一致する場合にのみ
パッケージのインストールを有効にします。

arch

「」
または「all」
、以下のうち1つ以上をカンマ区切りで指定した値:

Microsoft Windows: x86またはamd64(32または64ビットOS)
Mac OS X: x86_64(Intel/AMD)、aarch64(M1)
Linux/Unix: x86またはamd64(32または64ビットOS)

OSサポートを指定します。属性を削除するか、空文字列「」または「all」を使用すると、パッケージがすべてのアーキテクチャ
をサポートすることを示します。それ以外の場合は、1つ以上のアーキテクチャをカンマ区切りで指定します。例えば
Mac OS XでM1チップのみに制限する場合は「aarch64」を指定します。Update & Upgradeウィンドウ
は、現在のアーキテクチャがこの値と一致する場合にのみパッケージのインストールを有効にします。

ヒント: 現在のアーキテクチャを確認するには、Help→Aboutウィンドウを開き、System Information
タブを選択して、os.archプロパティの値を確認してください。

label

文字列

デフォルトの英語表示用パッケージ名です。他言語のバリアントを指定するには、下表で説明するlabel-[lang]
子ノードを使用します。このテキストは、Update & Upgradeの製品ツリーでパッケージ名として使用されます。

build

数字とピリオドで構成される文字列。例:1.0や5.3.2

パッケージのバージョンです。

url

文字列(HTTPリンクまたは相対ファイルパス)

プラグインファイルのダウンロードリンクです。http://my.server.com/downloads/MyPlugin-1.0.zipのようなHTTPリンク
、またはディスクリプタからの相対ファイルパスのいずれかを指定できます。

size
cksum

文字列

プラグインファイルのサイズとチェックサム(ハッシュ値)です。これらは、ダウンロードしたファイルが破損または改ざんされていないことを確認するために使用されます。
これらの値はCLIによって計算されるため、手動で変更しないでください。

producer

文字列

製作者/ベンダー名です。


releaseノードは、以下の子ノードをサポートしています。

子ノード名

説明

desc

デフォルトの英語プラグイン説明です。テキストはノードのテキストコンテンツとして配置する必要があります。
例:
<desc>This is my plugin.</desc>
<desc><![CDATA[ <html><body>This is <b>my plugin with HTML description.</b></body></html> ]]></desc>

desc-[lang]

2文字のISO-639-1言語コードで指定された言語向けのプラグイン説明です。例えば、スペイン語の説明であれば
<desc-es></desc-es>子ノード内に指定します。形式は上記のdescと同じです。

label-[lang]

2文字のISO-639-1言語コードで指定された言語向けのプラグイン表示名(ラベル)です。上記と同じルールが適用されます
が、ここではHTMLは使用できません。

5. リリースディスクリプタエディタ

Release Descriptor Editor (RDE) は、T-Planが提供するGUIツールです。リリースディスクリプタとプラグインアーカイブを作成・編集できます。

RDEはJavaで実装されており、Robotプラグインとして配布されます。Robotプラグインフレームワーク上で動作します。同じAPIを使用しているため、Update & Upgradeウィンドウと同じ方法で製品ツリーを表示できる点が大きな利点です。

RDEを入手するには、Update & Upgradeでそのプラグインを探してください。表示されない場合は、T-Plan supportに連絡してダウンロードリンクを取得し、URL/File Upgradeボタンからインストールしてください。

インストール後、以下の手順でRDEを起動します。

  1. Robotのホームフォルダに移動します

  2. release.bat(MS Windows)またはrelease.sh(Mac OS、Linux/Unix)を実行します。release.shの場合、先に実行権限を付与する必要がある場合があります(chmod a+x release.sh)。

重要:RDEは起動時に必ず最新のT-Planリリースディスクリプタをダウンロードします。これは、最新のXML構造で動作することを保証するためです。インターネットにアクセスできない場合、起動に失敗します。

rde-init.png


ウィンドウの左側には現在のディスクリプタの内容が表示されます。右側は編集用およびコード表示用です。

新しいディスクリプタを作成するには、ツールバーのNewボタンをクリックします。実際には、RDEは現在のドキュメントからすべてのパッケージを削除し、直近のXML構造をそのまま残すだけです。

既存のディスクリプタファイルを読み込むには、Openを選択します。

Robotプラグインのコマンドラインインターフェースとは異なり、RDEはすでにZIP圧縮済みのプラグインアーカイブ(Linux/Unixの場合は任意でtar/zip)を扱います。アーカイブにはプラグインディスクリプタやplugins/フォルダを含める必要はなく、RDEが自動的に作成します。これにより、前述したプラグインJSONディスクリプタの手動作成を省略できます。Robotインストールフォルダに配置したいファイルをZIP圧縮するだけです。

ZIPを新しいプラグインとして追加するには、ツールバーのAddをクリックしてZIPファイルを選択します。RDEはプラグインディスクリプタのJSONエディタを表示し、プラグイン属性を変更できます。これらは後からいつでも編集できます。

rde-plugin-descriptor.png


プラグインを追加すると、ウィンドウの右側でそのreleaseノードの属性を編集できます。

rde-release-props.png


いくつかのヒント:

  • 変更はすぐに適用されるため、プロパティを編集する際は注意してください。後から「変更を取り消す」オプションはありません。値をリセットするには、ディスクリプタ全体を破棄するか、プラグインを再追加するしかありません。

  • リリースディスクリプタには、プラグインZIP内のJSONディスクリプタに存在する一部のプロパティが重複して含まれます。主なものはPlugin Id、Build Type、Build Version 、Architectureです。これらの値は編集可能ですが、プラグイン自体との整合性を保つため変更しないことをお勧めします。エディタは、Update & Upgradeでの見た目の変更、つまりラベル(Build Name)、グループ、説明、ダウンロードURLの更新のみに使用してください。

  • 説明エディタには生のHTMLを入力できます。例えば「<html><body><h1>Hello!</h1></body></html>」を貼り付けて、左側のビューで効果を確認してください。

  • 英語以外の説明を追加するには、説明エディタの上にあるDefaultタブを右クリックし、コンテキストメニューからAdd a localized descriptionを選択します。

  • JSONプラグインディスクリプタを編集するには、Edit Plugin Descriptorボタンを使用します。RDEからプラグインファイルの再選択を求められた場合は、必ず正しいファイルを指定してください。

  • RDE v1.4は、他のディスクリプタへのリンク(descriptor XMLノード)をサポートしていません。テキストエディタで手動で追加する必要があります。RDEはこれらを変更しません。

ディスクリプタの内容に問題がなければ、ツールバーのSaveを選択してファイルに保存します。任意で、Update & UpgradeウィンドウのFile/URL Upgradeを使用して読み込み、想定どおりに動作することを確認できます。

6. プラグインの配布

プラグインを配布するには:

  1. パッケージ(プラグインZIPアーカイブ)とXMLリリースディスクリプタを公開Webサーバーのドキュメントルートに配置します。

  2. ディスクリプタのURLを確認します。例:https://myserver.mydomain/downloads/descriptor.xml

  3. このURLをユーザーに提供し、Update & UpgradeウィンドウのFile/URL Upgrade機能を使用して読み込むよう案内します。

Robot 7.0時点では、ディスクリプタを製品ツリーに永続的に追加することはできません。ユーザーは常にFile/URL Upgradeを通じて手動で読み込む必要があります。ただし、ウィンドウは最後に入力した値を記憶します。また、自動更新機能や新しいプラグインバージョンをユーザーに通知するポップアップもありません。これらの機能は今後のRobotリリースで提供される予定です。