【发布时间】:2016-08-13 02:43:52
【问题描述】:
我编写了简单的 Spring Boot 应用程序,添加了从 spring 教程复制的 pom 并构建了 jar 文件。在 windows 应用程序启动正常,但当我在 linux(CentOS Linux 版本 7.2.1511)上打开 jar 时,应用程序冻结:
...something
2016-04-20 12:10:33.535 INFO 25587 --- [ost-startStop-1] o.s.b.c.e.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2016-04-20 12:10:33.543 INFO 25587 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2016-04-20 12:10:33.544 INFO 25587 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2016-04-20 12:10:33.544 INFO 25587 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2016-04-20 12:10:33.544 INFO 25587 --- [ost-startStop-1] o.s.b.c.embedded.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
继续大约需要 7-8 分钟。 我在 Windows 7 上有热点,在 centos 上有 openjdk。 (如果重要的话)
Linux: java -version
openjdk version "1.8.0_77"
OpenJDK Runtime Environment (build 1.8.0_77-b03)
OpenJDK 64-Bit Server VM (build 25.77-b03, mixed mode)
Windows: java -version
java version "1.8.0_71"
Java(TM) SE Runtime Environment (build 1.8.0_71-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.71-b15, mixed mode)
你们知道是什么原因吗?提前谢谢..
【问题讨论】:
-
尝试使用 --debug 参数运行应用程序。它将提供更多信息
-
您是否使用嵌入式 Tomcat 运行?尝试使用此属性
java -Djava.security.egd=file:/dev/./urandom -jar file.jar运行应用程序。 -
是的,你是对的,我在某处找到了答案并作为答案发布,谢谢!
标签: java spring-boot openjdk jvm-hotspot