次の最小プロジェクトで、WebApplicationInitializerEclipse および IntelliJ 内でテストを実行すると Spring のインターフェースの実装が検出されるのに、Maven を使用すると検出されない理由がわかりません ( mvn clean test)。
Eclipse と IntelIJ を使用するとわかりますINFO: Spring WebApplicationInitializers detected on classpath: [com.example.pack.DummyInitializer@26d678a4]
mvn clean testなるほどINFO: No Spring WebApplicationInitializer types detected on classpath。_
テストでは、埋め込み Tomcat を起動します。
String pathToWebXML = new File("src/main/webapp/").getAbsolutePath();
tomcat = new Tomcat();
tomcat.setBaseDir("embedded_tomcat");
tomcat.setPort(0);
tomcat.addWebapp("", pathToWebXML);
tomcat.start();
は、新しい (そして空の) を作成する実装をweb.xml参照します。ServletContextListenerAnnotationConfigWebApplicationContext
サンプル プロジェクトを GitHub にアップロードしました: https://github.com/C-Otto/webapplicationinitializer