0

Java からバッチ モードで KNIME ワークフローを実行しています。

出力は成功を示しているようですが、プロセスは返されません (強制終了するにはタイムアウト パラメータを使用する必要があります)。

質問: プロセスが戻らない理由を知っている人はいますか?

Executing [C:\Program Files\KNIME\KNIME.exe, -noexit, -nosplash, -nosave, -reset, -application, org.knime.product.KNIME_BATCH_APPLICATION, -workflowFile="C:\...\workflow.knwf", -workflow.variable=template.sdf,C:\...\template.sdf,String, --launcher.suppressErrors]  [main] at AntBuildLogger.messageLogged()
KNIME.exe stdout: CompilerOracle: exclude javax/swing/text/GlyphView.getBreakSpot                            [Thread-2] at AntBuildLogger.messageLogged()
KNIME.exe stdout: INFO   main BatchExecutor  ===== Executing workflow C:\...\workflow.knwf =====  [Thread-2] at AntBuildLogger.messageLogged()
...
KNIME.exe stdout: INFO   main BatchExecutor  Workflow execution done Finished in 3 secs (3937ms)             [Thread-2] at AntBuildLogger.messageLogged()
KNIME.exe stdout: INFO   main BatchExecutor  ============= Workflow executed sucessfully ===============     [Thread-2] at AntBuildLogger.messageLogged()

Windows 10 と KNIME 3.2.1 を使用しています。

私は Ant Exec タスクをプログラムで使用しているので、すべての in/out/errストリームが正しく処理されると確信しています(また、そのコードを使用して他の多くの実行可能ファイルを呼び出しています)。

4

2 に答える 2

2

これは、-noexitパラメーターが原因で発生します (Windows で手動で開始すると便利です)。これは、実行終了後にプロセスを閉じるのを防ぐためです。

于 2016-10-14T18:09:56.497 に答える