2017-07-17 5 views
1

私は、Spring @ContextConfigurationアノテーションを持つ多くのクラスを持っています。注釈にはclassesというパラメータがあり、配列にすることができます。注釈パラメータの1つをIntelliJ IDEAの構造的置換で置き換えます。

は今、私のクラスのほとんどは、次のようになります。いくつかの魔法のバッチ操作の

@RunWith(SpringJUnit4ClassRunner.class)   
@ContextConfiguration(classes = { 
     ThisShellBeTwoClassesInContextHierarchyConfig.class, 
     SomeTest.SomeTestConfig.class, 
     WhateverConfig.class 
}) 
@Transactional 
public class SomeTest { ... 

所望の出力には、以下のようになります。

@RunWith(SpringJUnit4ClassRunner.class)   
@ContextHierarchy(classes = { 
     @ContextConfiguration(classes = { ConfigA.class }), 
     @ContextConfiguration(classes = { ConfigB.class }), 
     @ContextConfiguration(classes = { 
      SomeTest.SomeTestConfig.class, 
      WhateverConfig.class 
     }) 
}) 
@Transactional 
public class SomeTest { ... 

はこれまでのところ、私もIntelliJのを持つことができませんでしたIDEA Structuralは、ツールを置き換えるのではなく、classesパラメータで注釈を置き換えます。この

@$Annotation$($param$ = { $ctx$ }) 

よう でも単純化された構造は、何かを見つけることはありません。 ctxの出現は無制限に設定されます。

アノテーションパラメータを正しく使用するにはどうすればよいですか?

答えて

0

a bugのため、配列(ElementValueArrayInitializer)をアノテーションの名前と値のペアに一致させることはできないようです。

@$Annotation$($param$ = $value$) 

このようなクエリを使用して、必要な注釈を一致させることはできますが、これはおそらくあまり役​​に立ちません。

関連する問題