server.port和server.context-path在部署到tomcat时不生效

时间:2017-10-12 05:03:48

标签: java spring spring-mvc tomcat spring-boot

我有一个springboot应用程序,我想在tomcat中部署。我按照说明here 我在src / main / resources中有application.properties文件,带有以下条目

server.context-path=/mycontext
server.port=9000

我可以看到这些属性是从执行器URL加载的。

applicationConfig: [classpath:application.properties]": {
"server.port": "9000",
"server.context-path": "/mycontext"}

当我将其作为可执行jar运行时它工作正常但是当我部署到tomcat时它仍然监听8080端口并且上下文值没有更新而是它回退到应用程序文件夹名称。如果我错过了什么,请告诉我。提前谢谢。

2 个答案:

答案 0 :(得分:3)

默认情况下,

  • Tomcat在端口8080中侦听,当你在tomcat中部署了war时,它也在端口8080上侦听,这不能改变tomcat的监听端口。

  • application.properties文件是springboot项目的配置,但不适用于tomcat。

  • springboot项目中有一个内置的tomcat。当您在application.properties文件中更改其配置时,它将自动更改内置tomcat的配置。

如果要将项目部署到tomcat并侦听端口9000,则需要更改tomcat的配置文件(将侦听端口从8080更改为9000)。

N.B。:Springboot项目只需一个命令即可为我们提供智能部署技术。如果使用springboot项目,则无需使用其他tomcat进行部署。

答案 1 :(得分:0)

application.properties中的

server。* config值仅适用于嵌入式服务器。默认情况下,外部容器使用应用程序名称作为上述here

的上下文根