首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Spring Boot应用部署Tomcat无法启动问题

背景 最近公司在做一些内部小型Web应用时, 为了提高开发效率决定使用Spring Boot, 这货自带Servlet容器,  你开发Web应用时可以直接在本地像运行控制台应用一样启动,省去了重复部署时间...但是部署到服务器上Tomcat以后, 发现无法启动,错误如下: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine...经过分析, 我本地Tomcat版本是8.0.28, 而服务器上Tomcat是7.0.69。 我本地下了个Tomcat7.0.70部署也报同样错误。更加确定问题跟Tomcat版本有关。...经过多方查找资料,最后Stackoverflow上看到一个老外说SpringBoot默认Servlet容器是基于Tomcat8 在打好war包确实发现了Tomcat相关jar包,而且是Tomcat8...^_^ ---- 总结 总结下SpringBoot应用部署Tomcat配置方法用于备忘也方便遇到同样问题朋友 将打包方式改成war  这个没啥好说, 肯定要改成war 配置嵌入Tomcat方式

4.1K50
您找到你想要的搜索结果了吗?
是的
没有找到

TomcatSpringBoot是如何启动

包,直接启动,这就得益于SpringBoot内置了容器,可以直接启动,本文将以Tomcat为例,来看看SpringBoot是如何启动Tomcat,同时也将展开学习下Tomcat源码,了解Tomcat...web服务,但是还没有真正启动Tomcat,既然webServer是通过ServletWebServerFactory来获取,我们就来看看这个工厂真面目。...getServer()我们可以知道,Tomcat最顶层是Server,Server就是Tomcat实例,一个Tomcat一个Server;通过getEngine()我们可以了解到Server下面是...总结 SpringBoot启动通过new SpringApplication()实例来启动启动过程主要做如下几件事情: 配置属性 获取监听器,发布应用开始启动事件 初始化输入参数 配置环境,...输出banner 创建上下文 预处理上下文 刷新上下文 再刷新上下文 发布应用已经启动事件 发布应用启动完成事件 而启动Tomcat就是第7步“刷新上下文”;Tomcat启动主要是初始化2个核心组件

1.6K20

TomcatSpringBoot是如何启动

SpringBoot是如何启动Tomcat,同时也将展开学习下Tomcat源码,了解Tomcat设计。...web服务,但是还没有真正启动Tomcat,既然webServer是通过ServletWebServerFactory来获取,我们就来看看这个工厂真面目。...getServer()我们可以知道,Tomcat最顶层是Server,Server就是Tomcat实例,一个Tomcat一个Server;通过getEngine()我们可以了解到Server下面是...总结 SpringBoot启动通过new SpringApplication()实例来启动启动过程主要做如下几件事情: > 1. 配置属性 > 2....发布应用启动完成事件 而启动Tomcat就是第7步“刷新上下文”;Tomcat启动主要是初始化2个核心组件,连接器(Connector)和容器(Container),一个Tomcat实例就是一个Server

1.5K30

TomcatSpringBoot是如何启动

jar包,直接启动,这就得益于SpringBoot内置了容器,可以直接启动,本文将以Tomcat为例,来看看SpringBoot是如何启动Tomcat,同时也将展开学习下Tomcat源码,了解Tomcat...web服务,但是还没有真正启动Tomcat,既然webServer是通过ServletWebServerFactory来获取,我们就来看看这个工厂真面目。...getServer()我们可以知道,Tomcat最顶层是Server,Server就是Tomcat实例,一个Tomcat一个Server;通过getEngine()我们可以了解到Server下面是...总结 SpringBoot启动通过new SpringApplication()实例来启动启动过程主要做如下几件事情:> 1. 配置属性 > 2....发布应用启动完成事件 而启动Tomcat就是第7步“刷新上下文”;Tomcat启动主要是初始化2个核心组件,连接器(Connector)和容器(Container),一个Tomcat实例就是一个Server

1.3K50

Spring Boot应用部署Tomcat无法启动问题 javax.servlet.ServletContext.getVirtualServerName()

背景 最近公司在做一些内部小型Web应用时, 为了提高开发效率决定使用Spring Boot, 这货自带Servlet容器,  你开发Web应用时可以直接在本地像运行控制台应用一样启动,省去了重复部署时间...但是部署到服务器上Tomcat以后, 发现无法启动,错误如下: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine...经过分析, 我本地Tomcat版本是8.0.28, 而服务器上Tomcat是7.0.69。 我本地下了个Tomcat7.0.70部署也报同样错误。更加确定问题跟Tomcat版本有关。...经过多方查找资料,最后Stackoverflow上看到一个老外说SpringBoot默认Servlet容器是基于Tomcat8 在打好war包确实发现了Tomcat相关jar包,而且是Tomcat8...^_^ ---- 总结 总结下SpringBoot应用部署Tomcat配置方法用于备忘也方便遇到同样问题朋友 将打包方式改成war  这个没啥好说, 肯定要改成war 配置嵌入Tomcat方式

96110

记一次Linux上面启动部署tomcat服务器程序

前提:Linux系统已安装好jre环境 1、文件结构: 文件说明: 部署文件包含以下文件: 1、apache-tomcat-7 程序运行应用服务器tomcat 包含: war包:apache-tomcat...-7\webapps\**.war 2、config文件夹 代理程序所需配置文件 logback.xml 日志配置文件 **.properties 3、 jre7 文件夹 程序运行jre...环境 (windows版本用) 4、startup.bat启动命令 Windows startup.sh启动命令 Linux 5、程序运行后会产生日志文件和文件夹logs logs...文件夹与以上文件同级 启动命令配置: startup.bat set dir=%CD% set JRE_HOME=%dir%\jre7 set JAVA_OPTS=-D工程名.home=%CD% -Dapp.home.../startup.sh命令报错:没有权限 解决:cd 进入 tomcat/bin 目录 执行以下命令 chmod u+x *.sh

78920

如何改善应用程序 Linux 启动时间

大多数 Linux 发行版默认配置下已经足够快了。但是,我们仍然可以借助一些额外应用程序和方法让它们启动更快一点。其中一个可用这种应用程序就是 Preload。...简而言之,一旦安装了 Preload,你使用较为频繁应用程序将可能加载更快。 在这篇详细教程,我们将去了解如何安装和使用 Preload,以改善应用程序 Linux 启动时间。... Linux 中使用 Preload 改善应用程序启动时间 Preload 可以 AUR 上找到。...从现在开始,Preload 将监视频繁使用应用程序,并将它们二进制文件和库添加到内存,以使它启动速度更快。...因为 SSD 访问时间比起一般硬盘来要快多,因此,使用 Preload 是没有意义。 Preload 显著影响启动时间。因为更多应用程序要被预读到内存,这将让你系统启动运行时间更长。

3.8K10

jenkins自动部署应用到tomcat,编译后shell脚本简单示例

这里放一个shell示例, 容器是tomcat 思路: 先查对应tomcat时候启动, 启动了就kill掉, 然后删除webapps包, 把jenkins编译包复制到对应容器, 重命名包 ,...原因是:jenkins执行sh脚本时候,如果脚本中有启动后台进程情况,例如tomcat关闭和启动jenkinsjob构建结束之后,会kill所有的脚本里面衍生出子进程。...修改环境变量BUILD_ID值,这样,衍生出来子进程就不会被kill了2.tomcatjenkins不在一台linux上假如部署jenkins机器是A,部署tomcat机器是B。...就是相当于把上面的shell写到一个sh文件 jenkins执行这个sh文件 ? 因为我便是jenkinsTomcat同一台linux上 所以这里就没有把shell脚本写在sh文件 #!...2. jenkins部署失败 首先去看对应任务日志 ? ? ? 从日志可以看出来这里jenkins 编译是成功 但是复制war时候报错, 图中是因为不小心把空格敲成换行了 ?

69620

jenkins自动部署应用到tomcat,编译后shell脚本简单示例

这里放一个shell示例,    容器是tomcat 思路: 先查对应tomcat时候启动启动了就kill掉, 然后删除webapps包,  把jenkins编译包复制到对应容器, ...=tomcat_mobile_build_id     原因是: jenkins执行sh脚本时候,如果脚本中有启动后台进程情况,例如tomcat关闭和启动jenkinsjob构建结束之后,...修改环境变量BUILD_ID值,这样,衍生出来子进程就不会被kill了   2.tomcatjenkins不在一台linux上        假如部署jenkins机器是A,部署tomcat机器是...因为我便是jenkinsTomcat同一台linux上  所以这里就没有把shell脚本写在sh文件   #!...从日志可以看出来这里jenkins  编译是成功  但是复制war时候报错,  图中是因为不小心把空格敲成换行了 ?

1.3K30

linux启动tomcat后浏览器无法访问解决方法

前言 不论是要启动,还是要关闭tomcat服务,都是要去到tomcat安装目录下bin路径,当然你要是电脑关机自然是不需要。...但最近在启动后发现了一个问题:Centos服务器,本地和服务器ip互ping正常(本机ping服务器,服务器ping本地),但是服务器上部署tomcat后,本机却无法通过浏览器访问服务器tomcat...比如服务器公网ip为:123.123.123.123,启动tomcat后默认端口为8080,通过123.123.123.123:8080访问时,无法访问tomcat默认页面.考虑是服务器防火墙问题....start root 4932 4069 0 09:16 pts/0 00:00:00 grep --color=auto tomcat 如果tomcat未开启,则通过tomcatstartup.sh...重启防火墙 $ service iptables restart 之后就可以本机通过浏览器访问123.123.123.123:8080,就可以正常看到tomcat默认欢迎页面了.

5.3K20

京东四面:说说Tomcat SpringBoot 是如何启动

web服务,但是还没有真正启动Tomcat,既然webServer是通过ServletWebServerFactory来获取,我们就来看看这个工厂真面目。...getServer()我们可以知道,Tomcat最顶层是Server,Server就是Tomcat实例,一个Tomcat一个Server;通过getEngine()我们可以了解到Server下面是...总结 SpringBoot启动通过new SpringApplication()实例来启动启动过程主要做如下几件事情: > 1. 配置属性 > 2....发布应用启动完成事件 而启动Tomcat就是第7步“刷新上下文”;Tomcat启动主要是初始化2个核心组件,连接器(Connector)和容器(Container),一个Tomcat实例就是一个Server...本期文章通过SpringBoot启动来窥探了Tomcat内部结构,喜欢小编今日分享,记得关注我点赞哟,感谢支持!重要事情说三遍,转发+转发+转发,一定要记得转发 关注哦!!!

31400

小技巧:通过 New-Ailas 指令 Powershell 上启动多个不同版本应用程序

小技巧:通过 New-Ailas 指令 Powershell 上启动多个不同版本应用程序 如果你像我一样,电脑上安装有多个 Java 的话,你肯定会遇到这样烦恼:当我们试图命令行调用其他非...classpath 上 java.exe 时,需要费尽心思找到这些 Java 路径,以全路径执行,这十分费时费力。...但是如果你正在使用 Powershell 的话,现在这些问题就可以得到解决了,解决方法就是 New-Ailas 指令 New-Ailas 指令完整用法如下: New-Alias [-Name]...[-PassThru] [-Scope ] [-Force] [-WhatIf] [-Confirm] [] 你可以...举个例子,当我们想要通过使用 java16 来代表 Java 16 完整路径 "D:\ProgramData\.jdks\openjdk-16.0.2\bin\java.exe" 时,我们便可使用 New-Alias

1.1K30

通过重建Hosting系统理解HTTP请求ASP.NET Core管道处理流程:采用管道处理请求

我们甚至可以通过管道定制ASP.NET Core平台上创建我们自己Web框架,实际上MVC和SingalR这两个重要Web框架也是采用这样方式创建。...总的来说,ASP.NET Core管道由WebHost启动时候构建,WebHostBuilder则是后者创建者,下图揭示了三者之间关系。 ?...所以应用程序可以视为某个中间件一部分,如果一定要将它独立出来,整个请求处理管道将呈现出如下图所示结构。 ?...WebHostBuilderConfigure方法注册一个Action类型委托,注册中间定义管道逻辑更多地还是定义一个单独类型。...由于管道定制总是应用启动(Startup)时候进行,我们一般称这个用于定制管道类型为“启动类型”,并在大部分情况下会直接命名为Startup。

1.4K80
领券