Tomcat的启动脚本浅析(三)

Meta-World环境实战解析:pick-place-v2中的状态观测与动作控制 本文深入解析了Meta-World中pick-place-v2环境的强化学习实战要点。文章详细拆解了39维状态观测向量的构成与意义,包括机械臂末端、物体位置及目标坐标,并揭示了默认部分可观测设置的潜在影响。同时,阐述了4维动作空间的控制逻辑与奖励函数的分阶段设计,为训练高效稳定的抓放策略提供了核心指导与实用调优技巧。 阅读详情

Tomcat的启动脚本浅析(三)

3. Tomcat启动遇到的常见问题
如果一切顺利,我们就可以看到非常熟悉的Tomcat窗口。但是,由于各种原因,我们可能会碰到一些问题,下面就具体分析一下Tomcat不能正常启动的原因。

3.1 环境变量设置问题
如果机器上没有安装JDK或者环境变量JAVA_HOME或CATALINA_HOME没有设置正确,Tomcat就不能正常启动。

3.1.1 下面这个错误对话框的意思是Windows不能发现“-Djava.endorsed.dirs=”命令,下面背景的黑窗口的错误是JAVA_HOME环境变量应该指向JDK而不是JRE的根目录(本例故意把把JAVA_HOME指向JRE的根目录,所以产生这个错误)。在这种情况下,我们在可以重新设置环境变量JAVA_HOME并指向JDK的安装目录即可。




3.1.2 下面这个错误是因为CATALINA_HOME环境变量设置不正确,从而造成Tomcat不能正常启动。

C:/carl>startup
CATALINA_HOME C:/
The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program

3.1.3 下面这个错误是由于错误地设置了Java启动参数xms256M,正确的写法应该是-Xms256M,请注意大小写。大家知道,在Java命令行中,-Xms表示JVM开始启动时所分配的内存大小,而-Xmx表示JVM运行时最大所能占用的的内存大小,如果您的应用程序所需的内存超过Xmx的值,JVM就会抛出Out of Memeory(内存不足)的异常而停止。当然,Xmx的最大值不应超过物理内存的70%。

D:/back/blog>start_tomcat_debug.bat
D:/back/blog>set JAVA_OPTS=-xms256M
D:/back/blog>rem 请将JAVA_HOME环境变量修改到您的JDK安装目录
D:/back/blog>set JAVA_HOME=C:/Program Files/Java/jdk1.5.0_09
D:/back/blog>rem 请将CATALINA_HOME环境变量修改到您的Tomcat安装目录
D:/back/blog>set CATALINA_HOME=C:/carl/it/tomcat_research/jakarta-tomcat-5.0.28
D:/back/blog>rem 开始调用catalina.bat文件
D:/back/blog>call C:/carl/it/tomcat_research/jakarta-tomcat-5.0.28/bin/catalina.bat debug
Using CATALINA_BASE:   C:/carl/it/tomcat_research/jakarta-tomcat-5.0.28
Using CATALINA_HOME:   C:/carl/it/tomcat_research/jakarta-tomcat-5.0.28
Using CATALINA_TMPDIR: C:/carl/it/tomcat_research/jakarta-tomcat-5.0.28/temp
Using JAVA_HOME:   C:/Program Files/Java/jdk1.5.0_09
debug
无效的选项: -xms256M

用法:jdb <选项> <类> <参数> ...

如果遇到类似问题,可以用下面的方法重新设置一下JVM启动时的内存参数,在startup.bat脚本中加上下面这一行:

set JAVA_OPTS=-Xms256m -Xmx512m

上面这行表示Tomcat初始启动内存至少需要256M,而最大可能占用内存为为512M。有兴趣的读者可以在startup.bat里加上这行参数,启动Tomcat,您会从Windows任务管理器中看到您使用的内存迅速飙升。

3.2 Tomcat应用服务器的配置问题及其中部署的某个Web应用问题

3.2.1   Tomcat端口冲突,具体错误如下窗口所示。这表明缺省的8080端口已经被占有,所以Tomcat不能启动,我们可以通过修改Tomcat的配置文件server.xml来重新定义端口号即可启动,或者停止已经使用8080端口的程序。有时我们并没有启动Tomcat,也没有其它应用程序占用8080端口,但是Tomcat还抛出这个错误。这可能是因为上次我们关闭Tomcat时,并没有真正关闭Tomcat。在这种情况下,请从Windows任务管理器中检查一下有无一个java.exe的程序正在运行,如果发现,强行kill java.exe,然后重启试试。




3.2.2   Tomcat配置文件有错误,产生异常。有时我们在修改server.xml文件时,不小心多加或者多删了一个</>标签,可能造成Tomcat不能正常启动。下面的窗口说明了这个问题。




3.2.3   Tomcat中部署的某个Web应用发生异常。这时Tomcat能正常启动,但在Tomcat启动窗口里发现一大堆异常,如data source没有正确定义,程序抛出异常等等都有关系。下面的这个例子是Tomcat自带的balancer web应用程序启动时产生错误。该问题是因为我们错误的修改了balancer.xml文件造成的。




3.2.4
  Web应用程序的jar文件丢失,如JDBC数据库连接文件class12.jar, mysql.jar没有拷贝到Webapp的WEB-INF/lib目录下就会产生异常。尤其要注意的是在Tomcat5以前的版本中,公共jar文件包通常放在Tomcat安装目录下的common/lib子目录中,但在Tomcat6.0中,这个公共目录改为lib子目录。

3.3 未知错误

3.3.1 有时Tomcat的启动窗口一闪而过,根本就看不出启动过程中发生了什么错误。这中间的原因有好多种,最常见的解决办法就是使用run命令,打开startup.bat文件,找到下面这行:

call "%EXECUTABLE%" start %CMD_LINE_ARGS%

并将它修改为:

call "%EXECUTABLE%" run %CMD_LINE_ARGS%

这样,Tomcat启动时就不会弹出新窗口,我们就可以从容不迫地观察Tomcat的启动错误,并解决问题,请参考上面关于run命令的解释。

3.3.2 另外,阅读Tomcat的启动日志文件也是我们解决问题的重要办法,缺省的Tomcat日志是放在Tomcat安装目录的logs子目录下。例如下面这段日志说明JspServletViewer这个Web应用缺少Map Object的相关jar文件包,从而找不到com/esri/mo2/map/core/Layout这个Java类。

2008-02-23 11:19:30 StandardContext[/JspServletViewer]Exception sending context initialized event to listener instance of class com.esri.svr.cmn.FileRewriterContextListener
java.lang.NoClassDefFoundError: com/esri/mo2/map/core/Layout
at com.esri.svr.cat.ServiceXMLHandler.startElement ServiceXMLHandler.java:47)
at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source)

 原文:http://carllgc.blog.ccidnet.com/blog-htm-itemid-251452-do-showone-type-blog-uid-4092.html

作者:Carl

【车联网】Automotive 软件过程能力成熟度模型——ASPICE标准入门介绍 ASPICE标准详细定义了与汽车电子软件开发相关的各种术语和概念,包括软件组件、系统集成、测试和验证等。这些定义确保了所有开发团队在使用相同术语时具有一致的理解。 阅读详情

相关推荐

使用 Python 和可视化编程控制树莓派机械臂myCobot

这些模块包括逻辑、循环、数学、文本、列表、颜色、变量、函数以及控制机械臂的函数等等,所以用户可以轻松入门编程,只需单击右上角的运行就可以启动程序,做一些有趣的应用。可以搭配任意摄像头进行图像识别,具有4个 USB 端口,可以通过 Raspberry Pi 的微型 HDMI 端口连接到显示器. 最后,40 个GPIO 接头可以进行更多扩展应用,机械臂每个接口都有清晰的标记,面板上还有一个电源开关和一个直流电源插孔。您现在可以将机器人放在地板或桌子上,并用力拧紧吸盘,以确保机械臂的底座在操作过程中不会移动。

m0_62456998的博客 3965

启动Tomcat提示:指定的服务未安装

错误提示刚下载下来的tomcat或者刚重装了系统,这时候如果想运行tomcatX.exe可能会抱这样的错误:这是因为没有安装汤姆猫所指定的服务。安装服务打开cmd,切换到tomcat/bin目录下,运行命令:service.bat install,如图所示:运行完毕后,会出现服务已安装的提示,然后再运行tomcatX.exe或者tomcatXw.exe(这里的X是大版本号),就不会报错啦!卸载服务当

K.Sun 1946

PX4无人机实战:手把手教你用MAVROS实现Offboard模式(附避坑指南)

本文提供了一份详尽的PX4无人机Offboard模式实战指南,重点解析了如何通过MAVROS实现从仿真到实机的控制。内容涵盖硬件连接、串口权限设置、MAVROS配置、核心代码编写以及实机操作全流程,并附有详细的避坑指南和故障排查手册,帮助开发者快速掌握ROS与PX4飞控的集成开发。

weixin_29172201的博客 267

解决Tomcat打开startup.bat文件时提示找不到文件

解决Tomcat打开startup.bat文件时提示找不到文件 问题如上,开始以为是环境变量的问题,配置后发现并没有什么某用,后又经过tomcat7/8/9三个版本的测试。发现还是没用; 解决办法:删除环境变量里的 Comspec C:\windows\Program File(x86)\cmd.exe 再次双击打开startup.bat,完美打开 ...

qq_42704382的博客 4887

Ollama模型路径迁移实战:Windows/Mac/Linux三平台保姆级教程(附常见问题排查)

本文提供了一份详细的Ollama模型路径迁移教程,涵盖Windows、macOS和Linux三大平台。通过设置OLLAMA_MODELS环境变量或创建符号链接,指导用户将模型从默认路径安全迁移至新位置,以释放系统盘空间或提升性能。教程包含迁移前的准备、分平台步骤、迁移后的验证以及常见问题排查,确保迁移过程平滑可靠。

js777的博客 1184

0009 用VisualStudio设计Max工具

这次分享个独家专利^)^:在Visual Studio中设计3dsMax脚本工具界面。 某次做原型设计时,需求改来改去,实在懒得搞GUI;虽然也尝试在Axure RP里画原型,但还是Visual Studio更顺手,也更容易测试一些交互,就直接在VS里做了。后来突发奇想,想实验一把能否直接用到Max里去,结果没想到成功了,效果还挺好。发现了新大陆,记录一下。   开始: 在VS里新建W...

whwst的专栏 769

Windows 找不到文件'-Xms 128m'.

今天早上一时兴起,想安装Jira来玩玩,这是一个BUG管理系统,用于跟踪和管理项目中的BUG。它其实就是一个Tomcat下的项目而已。       下载了jira以后,解压就可以用,看样子很容易.......        结果一启动,报错了.......Windows 找不到文件'-Xms 128m'.如图:              这是咋啦?好像没有啥问题啊?java -versi...

自由时飞扬 搬家拉 http://www.meiriyouke.net 1244

微机原理课程设计-模拟十字路口交通信号灯

一、设计任务描述 1.1设计目的 通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结合专业从事微机应用设计奠定基础。 1.2 设计要求 控制LED灯,按照十字路口红绿灯的原理亮灭显示: (1) 东西方向车辆放行x秒...

Learning_is_endless的博客 2万+

tomcat 启动编码设置(UTF-8,乱码)

参考博客: 1.tomcat 启动编码设置:https://blog.youkuaiyun.com/chen_lay/article/details/100568800 2.Tomcat乱码问题 catalina.bat设置为UTF-8 控制台出现乱码https://blog.youkuaiyun.com/zhaoxny/article/details/79926333

m0_67401660的博客 1100

华为OD机试真题 新系统2026-04-15 C++ 实现【失灵的键盘】

有一个键盘有2个按键失灵了,按下这些键时会连续输出其他键对应的字符两次。具体如下: 1. 按下j键一次,屏幕上显示uu(两个连续的u);  按下b键一次,屏幕上显示t(两个连续的t) 2. u键和t键是好的,按下u键一次时,屏幕只会显示一次u(正常按键);按下t键一次时,屏幕只会显示一次t(正常按键) 3. 假定屏幕上连续显示两个t一定是按了一次b键,而不是两次t键;假定按键t之后不会紧接着按键b,即tttt转义为两个b,而不可能是tb

MISAYAONE的博客 210

零基础入门Simulink——基于Simulink的MIMO-OFDM系统仿真建模示例

MIMO概述MIMO技术利用多个天线进行信号发送和接收,通过空间复用来提高数据传输速率,或通过空间分集来增强信号的可靠性。OFDM概述OFDM是一种将高速率数据流分成多个低速数据流并行传输的技术,每个子载波都采用调制方式(如BPSK、QPSK),并通过IFFT/FFT变换实现串并转换。MIMO-OFDM优势结合了MIMO的空间分集增益与OFDM对抗多径效应的能力,适用于宽带无线通信系统。提供了更高的数据速率和更好的频谱效率,是现代无线通信标准(如4G LTE、5G NR等)的核心技术之一。

amy_mhd的博客 888

Tomcat启动脚本浅析

本文以Tomcat5.0.28为例,讨论一下Tomcat的启动过程及常见问题。大家都知道,Tomcat最普遍的启动方法就是在DOS 命令行窗口中执行Tomcat的bin目录下的startup.bat文件(双击该文件即可启动)。 [b]1. startup.bat脚本解析 [/b] 下面我们首先来看看startup.bat脚本是如何启动Tomcat的。Startup脚本非常明了,它的主要任务就...

VirgooooS 303

【DRAM存储器三十五】LPDDR4介绍--主要技术特性之VREF training,为什么要做VREF training?

详述DDR4、LPDDR4需要做vref training的原因和训练过程

highman110的博客 2915

tomcat开机启动脚本

以下是一个简单的开机启动脚本: 需将TOMCAT_DIR修改为自己的tomcat路径。 centos7必须要有**#!/bin/bash**,建议都加上 #chkconfig:2345 80 05也必须要有,参数可调整: 2345:表示系统运行级别(不用改) 80:启动优先级,越大优先级越低,(建议不要设置太高,如果应用启动依赖于网卡,优先级设置太高会导致引用启动失败) 05:停止优先级,越大优先...

Fighting 1153

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Linux tomcat 启动脚本

〇、创建脚本文件 tomcat 进入Linux的 /etc/init.d 创建文件 tomcat,内容如下: #!/bin/sh # chkconfig: 345 99 10 # description: Auto-starts tomcat7 # /etc/init.d/tomcat # Tomcat auto-start RETVAL=0 export LAN...

亲测,只为展现最完美的有效! 4234

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

tomcat启动脚本

#!/bin/bash # ######################################################### ########################################################### # chkconfig: 2345 96 14 ################################### #######...

ZZULI_Lucas的博客 935

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

tomcat启动加载Servlet源码浅析

总体架构 我们知道tomcat不只是web服务器,它还提供动态地内容是一个Servlet容器。tomcat的总体架构如图所示: Server表示一个服务器实例,由Connector和Container组成Service服务。Connector用于接收请求,Container表示一个容器它主要包含四个子容器: 1)engine 2)host 3)context 4)wrapper ...

weixin_34100227的博客 2532

可指定tomcat启动用户的脚本

可指定tomcat启动用户的脚本网上很多的同仁说tomcat无法指定启动的用户,造成很大的不方便,其实自己也曾遇到过这样的问题,之前草草的写了一个脚本,不过是漏洞百出,因为需要重命名tomcat的startup.sh为tstartup.sh,虽然公司内部在使用,但是还是不好意思拿出来和大家分享。不过这里还是会和大家拿出来,以示思考的历程,实在是太简单,让同仁们见笑了!原来的老脚本如下:#!/bin/bash#wrint by :liuyunfeng#used to start tomcat use as n

流云随风 8907

tomcat启动脚本,支持启动、停止、重启命令

我们经常在部署tomcat项目的时候,部署了新包之后,需要重启tomcat,如果你每次都是kill掉tomcat进程,然后再使用startup.sh启动的话,是不是觉得很不爽?那你不妨使用我下面的方法。 1、新建一个tomcat.sh文件,文件内容如下 #!/bin/bash tomcat_home=/home/xmccb/app/apache-tomcat-7.0.52 SHUTDO...

倾情烟雨的博客 8695

linux系统中使用shell脚本自启动tomcat

linux系统中使用shell脚本自启动tomcat 在/etc/init.d下新建文件tomcat 命令:vi /etc/init.d/tomcat tomcat文件新建完毕后,检查文件格式是否为unix,如果格式为dos,需要先将文件格式切换成Unix 强制切换为unix格式的方法: :set ff=unix #转换为unix格式 :wq #保存、退出 编辑tomcat文件 命令:vim ...

如果我不是我的博客 945

启动Tomcat的脚本

启动Tomcat的脚本

Leon_Jinhai_Sun的博客 589

tomcat 启动和关闭脚本

tomcat 启动和关闭脚本 start.sh #!/bin/sh . ~/.bash_profile echo "" > ${TOMCAT_HOME}/logs/catalina.out; sh ${TOMCAT_HOME}/bin/star...

逆水千帆的博客 812

tomcat源码04 - tomcat启动过程

tomcat源码04 - tomcat启动过程

qq_43350524的博客 682

java tomcat自动启动脚本,Tomcat init 脚本并添加服务自启动

很多用源码编译安装和一些用tar包直接解压缩的java程序都没有init脚本,不能像httpd或者nginx这种服务直接使用service httpd start,也不能使用/etc/init.d/httpd start 来启动。对于这种情况,我们可以自己写一个init脚本,并将命令用chkconfig --add 命令将该服务器加入自启动。下面我们以tomcat为例来演示这一过程:一、创建Tom...

weixin_36333893的博客 356

Tomcat和Springboot自启动脚本

这里写自定义目录标题Tomcat自启动脚本配置通过VIM添加tomcat-monitor.sh脚本给文件赋可执行权限执行脚本文件添加定时任务Springboot自启动脚本Spring boot的执行脚本start.sh脚本 Tomcat自启动脚本配置 通过VIM添加tomcat-monitor.sh脚本 添加下面命令到脚本中 # 获取tomcat进程ID TomcatID=$(ps -ef |grep tomcat |grep -w 'org.apache.catalina.startup.Bootstra

crazy_qu的博客 741
上一篇: Tomcat的启动脚本浅析(二)
下一篇: Tomcat源码学习(一)
m_yeah
博客等级 码龄19年 17粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值