たま氏の覚え書き

KNIME・AccessVBA・Swift等、学習したことを覚え書き

KNIME_バッチファイルによるKNIMEの起動_ファイルを直接指定

バッチファイルでWFを起動する際に、フォルダではなくWFファイル自体を指定する

バッチファイルによる起動を行いたいケース

KNIMEを開かずにKNIMEを再生したい場合
タスクスケジューラ等を使用して決まった時間にワークフローを再生したい場合 等

【参考】---------------------
以下の動画にもあるが、KNIME SERVER(有料、年額250万円~とからしい)を使用している場合には
その機能の中でタスクスケジューラと同じように決まった時間にWFを再生することができるそうである

KNIMETV_リモートで起動する方法▼
Remote Execution on KNIME Server - YouTube
KNIMETV_KNIME Serverの使用に関する解説▼
Sharing and Deploying Data Science with KNIME Server - YouTube
 タスク登録方法の解説は11分あたり~
 KNIME ServerではWFの共同編集も可能なようだ…( ゚Д゚)

WF構成フォルダを指定する方法

記事を作っておいて何だが、この方法の場合の記述はほぼ以下の記事で解説してある

▼すごくよくわかる解説▼
KNIME - これで完全自動化! - KNIMEを立ち上げずに実行する - バッチファイル・コマンドプロンプト - デジタル推進課

WFファイル自体を指定する方法

※(よく読んだら、前項のリンク先の下のほうでも解説してあったが...)
 WF構成フォルダの指定でうまくいかないときには以下のファイル自体を指定する方法を試す
※この方法の場合、ローカルのKNIMEアプリへのWFのインポートは不要
※バッチの実行は、KNIMEがインストールされているPCで行うことが大前提
 前準備としてknime.exeの格納場所を確認しておく
※この方法で、共有フォルダ上にあるKNIMEWFのファイルを指定し、起動することもできた、ぜひ試してほしい

1.ワークフローファイルの準備
バッチで起動したいWFをどこかしこにエクスポート
仮にWF名が「WF_test」という名前である場合、エクスポートして「WF_test.knwf」のような拡張子のファイルを準備する

2.バッチファイルの準備
例えばWFのファイル「WF_test.knwf」が仮にEドライブ上の「KNIMEWF」フォルダ内にあるとして
以下のような記述で、バッチファイルに記述

C:\Program Files\knime\knime.exe -nosave -nosplash -reset -consoleLog -application org.knime.product.KNIME_BATCH_APPLICATION -workflowFile="E:\KNIMEWF\WF_test.knwf"
  • 冒頭のexeの格納先は、自分のPCで確認し適宜変更
  • 各種オプションは必要に応じて変更※オプションについての詳細は前項のリンク先を参照
  • 「workflowDir」ではなく「workflowFile」と記述

【参考】実行時エラーの見かた

バッチファイルによる実行でエラーが発生すると、白背景の画面黒背景の画面がペアで出現する

白背景画面
exit code2:起動用バッチファイルの記述エラーの可能性を疑う
exit code3:起動中のエラーである可能性を疑う
exit code4:WF内のエラーである可能性を疑う
※白背景のエラーを閉じると黒背景の画面も閉じるので注意

黒背景画面コマンドプロンプト
バッチ実行のエラーの詳細を見る際には、コマンドプロンプト「Error」後に記載されているメッセージを読む
※KNIMEアプリケーションでWFを再生した際にコンソール上に記載されるものと同様

また発見があれば追記するか記事を投稿する

▼バッチが起動しない場合には以下も確認▼
tama-shi.hatenadiary.com