こんにちは、RuleStudio (変更された Eclipse) を使用して IBM Websphere ILOG JRules 7.0 で作業しており、TimerTask を実装しようとして問題が発生しています。
動作することがわかっている別のルールに基づいてテクニカル ルールを作成し、5 秒間待機してからセカンダリ メッセージを送信するコードを追加しようとしました。次のコードでこれを試しました:
int interval = 5000; // 5 sec
java.util.Date timeToRun = new java.util.Date(System.currentTimeMillis() + interval);
java.util.Timer timer = new java.util.Timer();
timer.schedule(new java.util.TimerTask() {
public void run() {
// Message Sent Here
}
}, timeToRun);
ただし、このコードはコンパイルされません。それが指摘するエラーは直後の開き括弧にnew java.util.TimerTask()
あり、エラーメッセージはat token "{"
.
ただし、いくつかの興味深い観察結果があります。
-やってみましたが、間違い なくインポートされているので、どちらがおかしいと思うかというjava.util.TimerTask test = new java.util.TimerTask();
エラーがスローされます。new java.util.TimerTask();
Could not find a public constructor (or argument mismatch) for java.util.TimerTask.
-必要に応じて、コンプに Java バージョン 1.6.0_17 をインストールしています。
ありがとう!