我有一个非常简单的SpringBoot“app”演示,其H2依赖于它。它包含在git filter-branch
中。
我可以使用demo.jar
从命令行运行它,然后启动它。
然后我可以转到http://localhost:8080/h2并显示H2控制台。
这是在Windows上。
现在 - 当我使用完全相同的jar文件并在macOS上使用完全相同版本的jre启动时,应用程序启动,但H2控制台servlet未注册,而/ h2在浏览器中返回错误。
这怎么可能?
我必须在我的mac环境中做过某些事情,但是什么?
在Windows上,H2 webServlet注册: o.s.b.w.servlet.ServletRegistrationBean:Servlet dispatcherServlet映射到[/] o.s.b.w.servlet.ServletRegistrationBean:Servlet webServlet映射到[/ h2 / *]
在macOS上缺少第二行,因此webServlet不会被自动配置/识别并映射到/ h2。
顺便说一句。我用Spring Boot 2.0 / 1.5.10,tomcat / jetty等测试了代码。没关系。环境中一定有问题。