tomcat是否有必要配置环境变量(摘)

之前发表了一篇关于如何安装和配置Tomcat的文章,而最近在开发项目的时候总是报错。后来被公司的大神问了一句:是谁告诉你Tomcat是需要配置环境变量的?

 

作为新手的我瞬间整个人都不好了!于是偷偷百度了一下,终于找到了关于Tomcat配置的真相。

 

1、Tomcat解压完成后,直接在bin目录下运行startup.bat,是可以启动Tomcat的!

2、但是如果不是在bin目录下运行startup.bat,则会启动失败,startup.bat闪退!

 

由此解决了一个衍生出的一台电脑装多个Tomcat的问题:如果想要同时启动多个tomcat,那么环境变量就要么都不配置,要么全都配置。

 

来,我们解读一下startup.bat文件源代码~

 

 

 

 啊哈哈,其实我也看不太懂,不过也大概能看出是

判断CATALINA_HOME是否为空,为空则把当前目录设为CATALINA_HOME的值;

再判断catalina.bat是否存在,不存在则把当前目录设为CATALINA_HOME的值;

再判断环境变量下的catalina.bat是否存在,存在则调用bin目录下的“catalina.bat start”命令~

 

然后我们来看catalina.bat文件的源代码~

  

判断CATALINA_BASE是否为空,并设置它的值等于CATALINA_HOME的值。

 

至于……Path变量……我在源代码中找不到,也百度不到相关的信息,在官网的文档中也没有讲……现在我是真不知道这个有什么用了。

但在代码中我看到了CLASSPATH变量

 

 

 

在这里说一下,绿色的字体,rem开头的,是注释,大家如果看不懂就复制到google翻译吧……

  大概意思也就是判断并设置classpath变量,然后根据classpath变量找文件

 

 

综上所述,tomcat的环境变量在运行的时候就自动配上了,我们还瞎**去配它干嘛

转载于:https://www.cnblogs.com/banxian-yi/p/10766915.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/449122.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

走迷宫+推箱子

两个小游戏的大致逻辑 走迷宫: 1、定义二维字符数组作为迷宫 2、定义变量记录老鼠的位置 3、获取游戏开始时间 3、进入循环 1、清理屏幕,使用system调用系统命令。 2、显示迷宫(遍历二维字符数组) 3、检查是否到达出口 获取游戏结束时间,计算出走出迷宫用…

Facebook开源ptr:在Python环境中并行运行单元测试

Facebook开源了一个名为Python Test Runner(ptr)的新项目,允许开发人员运行Python单元测试套件。ptr和现有测试运行器之间的主要区别在于ptr通过爬取存储库查找一定的Python项目,这些项目带有的单元测试在安装文件中已经定义过。 …

小窍门解决大问题(组图)

1.洗头时,在水中放少许盐,也可以预防脱发。 2.用醋洗头,可以令头发飘顺,容易打理而且兼有去头皮屑的功效。特别适合烫染后的头发。 3.刷牙时在牙膏上加上一点小苏打,刷三次后牙齿洁白如玉,牙锈自然脱落…

解决报错: Connecting to Kong on http ... Could not reach Kong on http://xxx.xxx.xxx.xxx:8001

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. Docker 中安装并启动好网关 kong 后,想要安装 kong 的图形化界面 kong-dashboard ,运行命令: do…

生成迷宫/C++

小时候,都喜欢玩迷宫,现在的电脑上还可以玩3D类迷宫。 那么每次开始游戏时,迷宫里密密麻麻的道路是怎么生成的呢? 在代码里面,我们把它们想象成一堆像素小格子,当两个格子连在一起,就像一堵墙&a…

Spring boot 配置tomcat后 控制台不打印SQL日志

在pom.xml中配置tomcat启动处加上&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</…

人生有五不:不等、不管、不看、不做、不给

一、我不等 朋友什么都等&#xff1a;等退休、等一千万存款、等孩子长大、等房贷缴清……最后等到了告别式。 他有感而发告诉我们这群探病友人&#xff0c;人都会走&#xff0c;可是他走得有些遗憾&#xff0c;有点不甘&#xff0c;非常后悔&#xff0c;除了工作之外&#xff0…

selenium操作浏览器的前进和后退

前进关键字&#xff1a;driver.forward() 后退关键字&#xff1a;driver.back() 测试对象&#xff1a;1、https://www.baidu.com/ 2、https://www.sogou.com/ 实例代码&#xff1a; 1 # 导入测试所需的库或者模块2 from selenium import webdriver3 import unittest4 import ti…

关于对象不能直接访问私有成员的误区(转)

先贴代码&#xff1a; #includeusing namespace std; class CPoint { public:CPoint(int xx, int yy){x xx;y yy;}CPoint(const CPoint &p){x p.x;y p.y;} private:int x, y; };如果你在想为什么拷贝构造函数的参数可以直接去访问它自己的私有成员的话&#xff0c;你就…

阿里云 ECS服务器 开放 8080 端口 -- 图解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 由于 kong-dashboard 的端口是映射到 8080 的&#xff0c;服务已启动成功却一直访问不了&#xff0c;最后才想起端口没有开放 ... 1. 登…

.NET高级代码审计(第三课)Fastjson反序列化漏洞

0X00 前言 Java中的Fastjson曾经爆出了多个反序列化漏洞和Bypass版本&#xff0c;而在.Net领域也有一个Fastjson的库&#xff0c;作者官宣这是一个读写Json效率最高的的.Net 组件&#xff0c;使用内置方法JSON.ToJSON可以快速序列化.Net对象。让你轻松实现.Net中所有类型(对象,…

IDEA:No SLF4J providers were found.

如果您是用IDEA 的 maven 写的 将slf4j的导入包 更改 为下列代码 <dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.8.0-beta2</version></dependency><dependency><groupId&…

【C++基础】时间类型详解(转)

Unix时间戳(Unix timestamp)&#xff0c;或称Unix时间(Unix time)、POSIX时间(POSIX time)&#xff0c;是一种时间表示方式&#xff0c;定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类Unix系统中&#xff0c;也在许多其…

没变强是因为你太舒服(图)

职业生涯很长&#xff0c;对企业而言&#xff0c;它需要你成为一个专才&#xff0c;但从职业发展来看&#xff0c;你需要成为一个全才&#xff0c;方能适应社会的变化。 阻碍你成为全才的不良习惯有很多&#xff0c;有时候我们喜欢趋利避害&#xff0c;拖延症更是让自己定下来…

解决:DuplicateMappingException: Table [xx] contains physical column name referred to by multiple ... .

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 报错如题&#xff1a; Caused by: org.hibernate.DuplicateMappingException: Table [xxx] contains physical column name [comment] …

0323表格学习

上午早来复习了一会昨天的课程。今天主要学习了表格的标签写法&#xff0c;难度不大&#xff0c;但是合并行与合并列容易混淆搞不明白。 <!--有序列表--> <ol type"I"> <li>数学</li> <li>英语</li> &l…

路由进阶

1>路由组件传参 在组件中使用 $route 会使之与其对应路由形成高度耦合&#xff0c;从而使组件只能在某些特定的 URL 上使用&#xff0c;限制了其灵活性。 解决方法: 1.1若是动态匹配页面&#xff0c;只需要在路由参数中加入props:true即可。 import Home from "/views/…

物联网摄像机通讯_网络调试助手

1&#xff0c;文档目的&#xff1a; 了解对于物联网网关与摄像机协议联动&#xff0c;进行报警抓图&#xff0c;智能检测&#xff0c;OSD叠加&#xff0c;语音播报控制等联动及数据交互。 适用产品&#xff1a;物联网网关 &#xff08;OSD是屏幕显示技术的一种&#xff09; 2…

linux 复制指定目录下的全部文件到另一个目录中,linux cp 文件夹

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 linux复制指定目录下的全部文件到另一个目录中复制指定目录下的全部文件到另一个目录中文件及目录的复制是经常要用到的。linux下进行复…

银行不告诉的秘密,看完豁然大悟

随着理财意识的广泛普及&#xff0c;每个人与银行打交道的次数越来越频繁&#xff0c;对于银行知识、业务的了解似乎也有了很大的进步。 但总有一些看似很“肯定”的事&#xff0c;在银行那里却成了“不一定”。 在银行里&#xff0c;还存在着不少让非专业人士“意想不到”…