问题:在IDEA中启动tomcat,在tomcat目录下并无发现项目文件,与eclipse中的原理不一样。其实IDEA是经过建立新的catalina_base(工做目录),而后使用xml将context映射到,项目的真实路径来运行tomcat的。web
tomcat安装目录:D:\Program Files\apache-tomcat-7.0.56apache
tomcat安装目录下有两个批处理文件:startup.bat和catalina.bat,它们均可以用来启动tomcat,startup.bat须要调用catalina.bat。tomcat
使用startup.bat启动tomcat过程:获取catalina_home和catalina_base,默认都是当前目录,也就是D:\Program Files\apache-tomcat-7.0.56;而后调用catalina.bat,并将catalina_home和catalina_base传递给catalina.bat;由catalina.bat完成启动。app
catalina_home和catalina_base区别:在只安装一个tomcat的状况下,能够经过使用不一样的catalina_base运行多个tomcat实例。catalina_base被称为工做目录,Tomcat每一个运行实例须要使用本身的conf、logs、temp、webapps、work和shared目录,所以CATALINA_BASE就 指向这些目录。 而其余目录主要包括了Tomcat的二进制文件和脚本,CATALINA_HOME就指向这些目录。eclipse
IDEA中是如何运行tomcat的:IDEA会为每一个项目在C:\Users\Administrator\.IntelliJIdea2016.3\system\tomcat\
下建立一个对应的目录,该目录将做为tomcat的工做目录C:\Users\Administrator\.IntelliJIdea2016.3\system\tomcat\Unnamed
该目录下有
\conf\Catalina\localhost\ROOT.xml,
ROOT.xml中指明了项目文件的真实路,
“\conf\Catalina\localhost\ROOT.xml”中
Catalina是engine name,localhost是host name,ROOT是context。webapp