カスタム UIMA RUTA ルール条件を追加したいと考えています。Eclipse に既存の UIMA Ruta プロジェクトがあります。これまでのところ、基本的なアノテーター スタブを使用して、同じプロジェクト内にソース ファイルを作成しました。
package mynamespace.extensions;
[imports]
public class MyNewCondition extends AbstractRutaCondition {
private final String para1;
public MyNewCondition(String para1) {
super();
this.para1 = para1;
}
@Override
public EvaluatedCondition eval(AnnotationFS annotation,
RuleElement element, RutaStream stream, InferenceCrowd crowd) {
// TODO Auto-generated method stub
if (para1 == "hfoo")
return new EvaluatedCondition(this, true);
else
return new EvaluatedCondition(this, false);
}
public String getPara() {
return para1;
}
}
ファイルは target/classes/... フォルダーにコンパイルされますが、RUTA スクリプトを作成すると:
DECLARE Test;
SW{MyNewCondition("foo") -> MARK(Test)};
... Eclipse は、「MyNewCondition」が定義されていないことを教えてくれます。それを実行すると、コンソールに「40 行目のエラー、"(": 実行可能な代替手段が見つかりませんでした」というメッセージが表示されます。さらにインポートする必要があると思います。 Github リポジトリの Extension サンプル プロジェクトから作業を試みましたが、スクリプト ファイルにはそれ以上のインポートが含まれていないため、どこから始めればよいかわかりませんが、関連する xml 記述子ファイルには含まれています。これらは自動的に生成されます。これを変更する必要があるのか、それとも別のものなのかわかりません。
また、Eclipse のビルド パス オプションを使用して 2 番目のプロジェクトから同じ新しい条件タイプをインポートしようとしましたが、うまくいきませんでした。
誰か助けてくれませんか?ありがとう。