使用 tomcat7 maven 插件 (v2.2) 运行时,JSF (com.sun.faces 2.1.12) 无法在目标/类中找到带注释的类。
当我们调试时,我们使用 Maven 的 tomcat7:run 插件运行应用程序。当 tomcat7 插件在启动时为 webapp 构建类路径时,它会将 target/classes 作为类目录添加到 webapp 类路径中,并将 src/main/webapp 配置为 webapp 根目录。这意味着WEB-INF/classes 中没有类,并且 com.sun.faces 注释扫描器不会扫描 @ManagedBeans 的目标/类。
我尝试通过将 META-INF/faces-config.xml 添加到 src/main/resources 来欺骗注释扫描器扫描目标/类。这几乎起作用了,因为在 target/classes 中找到了 MET-INF/faces-config.xml,但 com.sun.faces.config.ConfigManager.ProvideMetadataToAnnotationScanTask 跳过了它,因为它不在 jar 中。我很难找到扫描 WEB-INF/类的代码。
如何说服 com.sun.faces 扫描我的目标/类目录以查找 @ManagedBeans?