2016-11-26 32 views
0

EclipseでKnimeのすべてのプラグインを追加しました。自分のカスタムノードを作成したいと思います。あるノードから別のノードにデータを渡す方法を理解できません。knimeでカスタムノードを作成する方法は?

「ファイルリーダー」ノードであるKnime自体によって提供された1つのノードを見ました。今、このノードのソースコードまたはこのノードのjarファイルが必要ですが、私はそれを見つけることができません。

私はEclipseプラグインフォルダ内で同様の名前で検索していますが、それでも私はそれを取得しませんでした。

あるノードから別のノードへデータを渡す方法と、knimeとソースコードによって与えられたノードのクラスまたはjarを特定する方法を教えてもらえますか?あなたのデータは、標準のデータテーブルであると仮定すると

+0

投稿からメールを削除してください。 Stackoverflowの回答は電子メールではなく、ここに残しておくだけで、多くのスパムが送信されるだけです。また、人々がそれを見つけることができるように "Eclipse"であなたの質問にタグを付けることもできます。 – ImportanceOfBeingErnest

+1

https://tech.knime.org/developers –

答えて

0

は、その後、あなたはスーパーのコンストラクタを呼び出して、NodeModelをサブクラス化する必要があります。

public MyNodeModel(){ 
    //One incoming table, one outgoing table 
    super(1,1); 
} 

あなたはデフォルト#execute(BufferedDataTable[] inData, ExecutionContext exec)メソッドをオーバーライドする必要がある - これはどこの肉でありますノード作業が完了し、出力テーブルが作成されます。理想的には、入力テーブルと出力テーブルに1対1のロー・マッピングがある場合は、ColumnRearrangerクラスを使用します(これにより、ディスク入出力が大幅に削減され、必要に応じてノードの単純な並列化が可能になります)。受信データテーブルを反復処理し、出力テーブルを生成します。

#configure(DataTableSpec[] inSpecs)の方法は、ノードが実行される前に出力テーブルの仕様が提供されていれば実装する必要があります(通常は可能ですが、これにより下流ノードも構成できますが、 Transpose 'ノードはそうすることができないノードの例である)。

実装する必要があるさまざまな方法もありますが、場合によっては空の方法になる場合もあります。

NodeModelに加えて、NodeFactory、オプションでNodeSettingsPane、およびオプションでNodeViewも実装する必要があります。

Eclipseでは、多くのノードのソースを見ることができ、KNIMEコミュニティの「ブック」ページにはすべてソースコードへのリンクがあります。ステップバイステップのガイドについては、https://tech.knime.org/developer-guidehttps://tech.knime.org/developer/exampleをご覧ください。また、Knimeフォーラム(開発者フォーラムを含む)への質問には一般的に迅速な対応が得られます。さらに数日間学習する場合は、KNIMEで開発者トレーニングコースを年に数回実行します。最後に、ノードの振る舞いのベストプラクティスを記述するノードラインのガイドラインに慣れておくことが重要です。

0

KNIMEノードのソースコードは、git hubで利用可能になりました。

また、eclipse KNIME SDKのファイルリーダーのソースコードについては、プロジェクト>プラグインの依存関係> knime-base.jar> org.knime.base.node.io.filereaderで確認できます。

KNIME SDKで作成したプロジェクトでは、デフォルトでKnime-base.jarがプロジェクトに追加されます。

関連する問題