クラスを含めようとしました(文字通り、あるグルーヴィーなファイルから別のファイルにカットアンドペーストしました)。
以下のエラーが表示されます
Groovy スクリプトのエラー: 起動に失敗しました。Script1.groovy: 101: クラス定義がここで予期されていません。内部クラスを使用しようとした可能性があります。内部クラスはサポートされていません。代わりにクロージャを使用してみてください。
目的は、静的ロジック全体を個別に分離することです。
クラスを含めようとしました(文字通り、あるグルーヴィーなファイルから別のファイルにカットアンドペーストしました)。
以下のエラーが表示されます
Groovy スクリプトのエラー: 起動に失敗しました。Script1.groovy: 101: クラス定義がここで予期されていません。内部クラスを使用しようとした可能性があります。内部クラスはサポートされていません。代わりにクロージャを使用してみてください。
目的は、静的ロジック全体を個別に分離することです。
あなたは内部のように見えるものを持っていますclass
class Maps
メソッドの途中
public static void populateInstance(List lookup_1, List lookup_2, List lookup_3, List lookup_4,
List lookup_5, List lookup_6, List lookup_7){
また、これは Groovy であるため、すべてのゲッターを宣言する必要はありません。
と
import com.mobRet.*
すでにそのパッケージに含まれているため、必要ありません。また
import java.util.ArrayList
import java.util.HashMap;
import java.util.List
Groovy がデフォルトでインポートするため、削除可能
メソッド内では、populateInstance
これらすべてを変更できます。
tariffAllowance = new ArrayList();
lookup_1.each { offer ->
tariffAllowance.add(offer)
}
fmb = new ArrayList();
lookup_2.each { offer ->
fmb.add(offer)
}
ブロック先:
tariffAllowance = lookup_1.collect()
fmb = lookup_2.collect()
また、を呼び出してすべてのデータを変更できるシングルトンを作成しているようですpopulateInstance
。マルチスレッド環境では、これが間違っている可能性が非常に高くなります (事実上、これは 1 つの巨大なグローバル変数です)。