# ユーザールーチンを管理

Talend Studioでは、特定のニーズを満たすために、ユーザールーチンの作成または編集を実行できます。

## カスタムルーチンJARを作成

Talend Studioでは、カスタムルーチンJARを作成し、ジョブとジョブレットにカスタムルーチンJAR依存項目を設定できます。

カスタムルーチンJARでは、複数のユーザールーチンを依存項目ごと単一アーカイブにパッケージできます。ジョブとジョブレットにカスタムルーチンJAR依存項目を設定すると、ジョブとジョブレットのコード依存項目がより明示的になり、依存項目の競合を防げます。

### About this task

カスタムルーチンJARを作成する方法:

### Procedure

1. [Repository] (リポジトリー)ツリービューで[Code] (コード) &gt; [Custom Routine Jars] (カスタムルーチンJar)を右クリックして、コンテキストメニューから[Create Routine Jar] (Beanルーチンを作成)を選択します。

   [New Routine Jar] (新規ルーチンJar)ダイアログボックスが表示されます。
2. [Name] (名前)、[Purpose] (目的)(オプション)、[Description] (説明)(オプション)などの一般的なプロパティを入力します。

   [Description] (説明)フィールドに入力した情報は、[Repository] (リポジトリー)ツリービュー内のカスタムルーチンJARにマウスポインターを移動するとツールチップとして表示されます。
3. [Finish] (終了)をクリックし、新しいカスタムルーチンJARを保存します。

   新しく追加されたカスタムルーチンJARは[Custom Routine Jars] (カスタムルーチンJar)ノードの下に表示されます。

   新しいカスタムルーチンjarを右クリックし、コンテキストメニューから[Create Routine] (ルーチンを作成)を選択すると、内部ルーチンを作成してそれらを新しいカスタムルーチンJAR内に追加できます。詳細は、[ユーザールーチンを作成](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0/creating-user-routines)をご覧ください。

   グローバルユーザールーチンを右クリックし、コンテキストメニューから[Copy Routine to...] (タスクのコピー先...)を選択すると、カスタムルーチンJAR内にどの既存のグローバルユーザールーチンでも追加できます。

   情報メモNote: グローバルユーザールーチンはカスタムルーチンJAR内にコピーされた後も、グローバルとして保持されます。

   情報メモTip: カスタムルーチンJARや内部ルーチンの名前を変更する場合は、そのいずれかを右クリックし、コンテキストメニューから[Edit properties] (プロパティを編集)を選択します。表示されたダイアログボックスで名前を編集します。

## ユーザールーチンを作成

特定の解析ニーズに従って、専用のルーチンを作成できます。

### Procedure

1. グローバルユーザールーチンを作成する必要がある場合は、[Code] (コード) &gt; [Global Routines] (グローバルルーチン)を右クリックし、コンテキストメニューから[Create Routine] (ルーチンを作成)を選択します。

   [Global Routines] (グローバルルーチン)ノードを右クリックし、[Create folder] (フォルダーを作成)を選択すると、そのノードの下にフォルダーを作成できます。フォルダーはグローバルユーザールーチンの分類に役立ちます。
2. カスタムルーチンjar内に内部ルーチンを作成する必要がある場合は、[Code] (コード) &gt; [Custom Routine Jars] (カスタムルーチンJar)の下のカスタムルーチンjarを右クリックし、コンテキストメニューから[Create Routine] (ルーチンを作成)を選択します。
3. 表示される[New Routine] (新規ルーチン)ダイアログボックス内に、[Name] (名前)、[Purpose] (目的) (オプション)、[Description] (説明) (オプション)などの新しいルーチンの一般的なプロパティを入力します。

   [Description] (説明)フィールドに入力した情報は、[Repository] (リポジトリー)ツリービュー内のルーチンにマウスポインターを移動するとツールチップとして表示されます。
4. [Finish] (終了)をクリックします。

   新しく作成されたルーチンは[Repository] (リポジトリー)ツリービューに保存されます。ルーチンエディターが開き、デフォルトでモデルルーチンが示されます。これには、青色の説明文と対応するコードで構成されるサンプルファンクションが含まれます。

   情報メモNote: ルーチンにある各ファンクションの詳細な説明を追加することをお勧めします。説明には、一般に、使用が予期される入力および出力パラメーター、戻される結果、例を含める必要があります。この情報は、共同作業やルーチンの保守で役立つことがあります。
5. ファンクションサンプルを変更または自身のコードで置き換え、Ctrl + Sを押して変更を保存します。それ以外の場合、ルーチンはルーチンエディターを閉じた時に自動的に保存されます。

   情報メモNote: Ctrl + CコマンドおよびCtrl + Vコマンドを使用して、システムルーチンのコードのすべてまたは一部をコピーしてユーザールーチンで使用し、ニーズに従ってコードを適合させることができます。

## ユーザールーチンを編集

ユーザールーチンはいつでも変更できます。

### About this task

ユーザールーチンを編集するには、次の手順に従います。

### Procedure

1. [Repository] (リポジトリー)ツリービューにあるユーザールーチンを右クリックし、[Edit routine] (ルーチンの編集)を選択します。
2. ワークスペースで開いたルーチンエディターでルーチンを変更できます。
3. ルーチンをニーズに応じて適合させたら、Ctrl + Sを押して保存します。

## ユーザールーチンライブラリーを編集

外部ライブラリー(通常は.jarファイル)をインポートすれば、ユーザールーチンのライブラリーを編集できます。

内部ルーチンがパッケージ化されているカスタムルーチンJarのライブラリーを編集すると、内部ルーチンの外部ライブラリーをインポートできます。

これらの外部ライブラリーファイルはモジュールと同様、現在のTalend Studioの[Modules] (モジュール)ビューにリスト表示されます。[Modules] (モジュール)ビューの詳細は、[Talend Studioに外部モジュールをインストール](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0/installing-external-modules)をご覧ください。

インポートされたライブラリーは、Talend Studioのライブラリーファイルにもリスト表示されます。

### About this task

ユーザールーチンまたはカスタムルーチンjarのライブラリーを編集するには、以下のようにします:

### Procedure

1. インポートするライブラリーがお使いのマシンにない場合は、[Modules] (モジュール)ビューを使ってダウンロードしてインストールするか、ダウンロードしてローカルディレクトリーに保存します。
2. [Repository] (リポジトリー)ツリービューで、ユーザールーチンまたはカスタムルーチンjarを右クリックした後に、[Edit Routine Libraries] (ルーチンライブラリーを編集)または[Edit Routine Jar Libraries] (ルーチンjarライブラリーを編集)を選択します。

   [Import External Library] (外部ライブラリーをインポート)ダイアログボックスが表示されます。

   ![\[外部ライブラリーをインポート\]ダイアログボックス。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/Import_Libraries.png)
3. [New...] (新規...)をクリックして[Module] (モジュール)ダイアログボックスを開きます。ここから外部ライブラリーをインポートできます。

   ![\[Module\] (モジュール)ダイアログボックス。](https://help.qlik.com/talend/ja-JP/studio-user-guide/Resources/images/import-library-for-routine-and-bean.png)
4. 次のいずれかの方法でライブラリーを指定します。
   * [Platform] (プラットフォーム)オプションを選択した後、リストでそのライブラリーを選択します。

   * [Install a new module] (新しいモジュールをインストール)オプションを選択し、[...]ボタンをクリックしてローカルライブラリーで目的のライブラリーを参照します。

     [Install a new module] (新しいモジュールをインストール)オプションを選択し、[...]をクリックしてPOMファイルを参照すれば、POMファイルの直接依存項目をインポートできます。

     選択されたライブラリーのMVN URIが&lt;TalendStudio&gt;\configuration\MavenUriIndex.xmlファイルに存在する場合は、[Default MVN URI] (デフォルトMVN URI)フィールドに自動的に入力されます。

     選択されたライブラリーのMVN URIがjarファイルに存在し、デフォルトのMVN URIと異なるものである場合は、自動的に検出されて[Custom MVN URI] (カスタムMVN URI)フィールドに入力されます。カスタムMaven URIを変更したり、カスタムMaven URIを使ってライブラリーをインストールする場合は、[Custom MVN URI] (カスタムMaven URI)チェックボックスをオンにします。デフォルトMVN URIもカスタムMVN URIも存在しない場合は、[Default MVN URI] (デフォルトMVN URI)フィールドにmvn:org.talend.libraries/6.0.0-SNAPSHOT/jarと入力されます。

   * [Artifact repository (local m2/nexus)] (アーティファクトリポジトリー(ローカルm2/nexus))オプションを選択し、[Module Name] (モジュール名)フィールドに検索キーワードを入力し、[Search Local] (ローカル検索)をクリックして&lt;TalendStudio&gt;\configuration\.m2ローカルリポジトリーを検索するか、[Search Remote] (リモート検索)をクリックし、リモートのアーティファクトリポジトリーで検索した後に下のリストから目的のライブラリーを選択します。検索キーワードにはライブラリーの部分名も完全名も利用できます。

     [Search Remote] (リモート検索)ボタンは、Talend Administration CenterまたはTalend Management Consoleでユーザーライブラリーが設定されている場合のみ利用できます。
5. 選択されたライブラリーの直接依存項目をインポートしたい場合は、[Add direct dependencies] (直接依存項目を追加)チェックボックスを選択します。

   [Install a new module] (新しいモジュールをインストール)オプションを選択してPOMファイルを参照すると、この[Add direct dependencies] (直接依存項目を追加)チェックボックスは選択された状態でグレー表示されます。

   providedスコープ、testスコープ、systemスコープの依存項目はインポートできません。依存項目のスコープの詳細は、[POM Reference](https://maven.apache.org/pom.html#Dependencies) (英語のみ)をご覧ください。

   情報メモNote: 直接依存項目は選択されたライブラリー内のPOMファイルにある依存項目、または選択されたPOMファイルにある依存項目に基づいてインポートされます。直接依存項目は、選択されたライブラリーにPOMファイルが存在し、そのPOMファイルに依存項目のgroupId、artifactId、versionという情報が含まれている場合のみ検出できます。
6. 選択したライブラリーの推移的依存項目をインポートしたい場合は、[Add transitive dependencies] (推移的依存項目を追加)チェックボックスを選択します。このチェックボックスは、[Add direct dependencies] (直接依存項目を追加)チェックボックスが選択されている時に利用できます。

   依存項目ファイルのダウンロードには時間がかかることがあります。
7. OKをクリックして変更を確定します。

   選択されたライブラリーファイルは、[Import External Library] (外部ライブラリーをインポート)ダイアログボックスの[Library File] (ライブラリーファイル)リストに表示されます。

   [Add direct dependencies] (直接依存項目を追加)チェックボックスが選択されている場合は、選択されたライブラリーの直接依存項目も[Library File] (ライブラリーファイル)リストに表示されます。

   [Library File] (ライブラリーファイル)リストでファイルを選択して[Remove] (削除)をクリックすれば、どのインポート済みファイルでも削除できます。
8. Talend Studio外で実行されるスタンドアロンジョブとしてジョブをビルドする時に外部ライブラリーを含むには、対応する[Required] (必須)チェックボックスを選択します。選択しないと、ジョブが実行される場合に、"クラスが見つかりません"というエラーが発生します。

   デフォルトでは、インポートされる各ライブラリーの[Required] (必須)チェックボックスは選択されています。

   CamelライブラリーまたはCXFライブラリーがインポート済みで、 Talend RuntimeにデプロイされるOSGIバンドルとしてジョブをビルドする必要がある場合は、それらのライブラリーが既に Talend Runtimeバンドルに含まれるため、重複クラスパスが原因の問題を防ぐよう[Required] (必須)チェックボックスをオフにすることをお勧めします。
9. [Finish] (終了)をクリックしてダイアログボックスを閉じます。