首页 > 编程知识 正文

idea发布项目到tomcat,idea运行tomcat项目

时间:2023-05-04 00:32:21 阅读:130845 作者:4436

文章目录问题Tomcat引入APP应用的三种方法IDEA引入web APP应用的原理IDEA启动的Tomcat如何找到当前的APP应用Tomcat如何找到IDEA创建的工作环境

问题

开始学习J2EE时,我们将web项目打包到war包中,并将其放在tomcat安装目录中的webapps下。 然后,tomcat会自动解压缩文件并启动项目。

但是,使用IDEA发现,只要将启动方法设置为Tomcat-Server的local启动,就可以直接在IDEA中启动项目。 但是,到目前为止只是好奇心,没有探索是如何实现的。

这边的文章为了以前的好奇心填个窟窿吧。

Tomcat部署APP应用程序的三种方法是使用conf/server.xml文件中的Context标记conf/[enginename]/[hostname]/目录下的APP应用程序名称xml文件将context.xml设置为应用[ engine name ]/[ hostname ]/context.XML.default文件直接将war APP应用程序设置为host (缺省为webapps )目录将应用于文件夹的文件夹置于Host (默认为webapps )目录下。 我们熟悉的方法是第二种。

IDEA引入web APP应用的原理探索首先只是探索最简单的web项目(项目名为test-web)并在IDEA上启动)的原理,所以在此不叙述其如何构成)

IDEA启动的Tomcat如何定位当前APP应用程序

在tomcat的安装目录中查看时,您正在查询两个只有conf/server.xml和conf/context.xml而没有预期的文件。 此时实际上已经陷入了死胡同,但是观察从IDEA控制台打印的启动日志时发现了重要的信息。

. catalina _ base :/users/XXX/library/caches/jetbrains/intellij idea 2020.3/Tomcat/0c 289466-0629-42c 6 后面好像有传球。 然后我找到了这个目录。 结果发现,该文件夹的结构与Tomcat安装目录类似。 以及想要查找的文件—— test-web.xml

文件中的docBase也显示了IDEA编译输出的路径。

! - conf/catalina/localhost/test-web.XML-- context path='/test-web ' docbase='/users/XXX/idea projects

到目前为止,我至少知道了Tomcat是如何找到项目并引入启动的。 但是,Tomcat启动器是如何找到IDEA创建的工作环境的呢?

Tomcat是如何找到IDEA创建的工作环境的,并通过以前的启动日志信息联想到CATALINA_BASE。 如果能知道这个值Tomcat是怎么得到的,所有的疑惑都会消除。

我把目标放在了Tomcat的发射器上。 发射器应该有重要的信息。 我果然在评论中发现了那个。 在catalina.sh中,CATALINA_BASE来自环境变量,否则与CATALINA_HOME匹配。

# [-z '$CATALINA_BASE' ]如果环境变量的CATALINA_BASE长度为0,则为true。 执行以下步骤将CATALINA_BASE和CATALINA_HOME设置为匹配: [-z ' $ catalina_base ' ] catalina _ base=' $ catalina _ home '我知道启动程序首先从当前系统环境中查询catalina _ base的值,因此

因为是临时的,所以控制台之间的项目是隔离的,同时启动多个APP应用程序没有影响,控制台关闭也没关系。

那么,在模拟IDEA并启动项目后,只需在控制台上运行两个命令,即可获得以下效果: (前提条件是在IDEA中生成对应的文件目录)

MAC操作系统

导出catalina _ base=/users/XXX/library/caches/jetbrains/intellij idea 2020.3/Tomcat/0c 289466-0629-42c6- 6 然后用catalina.bat启动。

结论

将项目编译为指定的文件。 IDEA首先创建新的Tomcat工作区。 每个项目有一个,如果有,就不需要再次创建。 在conf/[enginename]/[hostname]/目录下创建并应用命名xml文件以设置编译输出的文件路径。 设置临时环境变量,使Tomcat启动器能够找到此工作区。 启动Tomcat后,将成功部署APP应用程序。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。