2

Proguard の難読化の後、次のエラーが発生します。

ServletContext リソース [/WEB-INF/applicationContext.xml] からの XML ドキュメントの解析中に予期しない例外が発生しました。ネストされた例外は java.lang.IllegalStateException: Bean クラス [com.company.project.baaa] のアノテーション指定の Bean 名 'a' が、同じ名前とクラス [com.company.project.ああ]

私は注釈ベースのスプリング構成を使用しています.Springは2つのBeanに同じ名前を付けることを許可していないため、Proguardを使用して同じ名前の2つのクラスを避けるにはどうすればよいですか.

4

3 に答える 3

16

これがあなたが望むものかどうかはわかりませんが、@Component (およびステレオタイプ @Repository、@Service、@Controller) 値で Bean 名を指定できます。

@Component("myBeanName")
public class MyBean {

}
于 2012-04-24T15:31:48.877 に答える
3

私は同じ問題を抱えていましたが、他に何も役に立ちませんでした。クラスを移動した場合、存在しない場合でも、古いクラスを参照している場合に問題が発生することがあります。

この場合、これを行うだけです:

mvn eclipse:clean

mvn eclipse:eclipse

これは私にとってはうまくいきました。

于 2019-05-03T11:29:35.893 に答える