tomcat默认的而发布路径为 tomcat/webapps/,但是如果这个目录下有一些默认的项目,在tomcat启动的时候会跟着一起加载。如果不想删除这些项目,可以把tomcat发布的路径修改到其他地方。
那么怎么修改呢? 找到conf/server.xml 在里面找到<Host>标签
<Server>
<Service>
<Engine name="Catalina" defaultHost="localhost">
## Engine组件在Service组件中有且只有一个;Engine是Service组件中的请求处理组件。
## Engine组件从一个或多个Connector中接收请求并处理,并将完成的响应返回给Connector,最终传递给客户端。
<Host name="localhost">
## Host是Engine的子容器。Engine组件中可以内嵌1个或多个Host组件,每个Host组件代表Engine中的一个虚拟主机。
## Host组件至少有一个,且其中一个的name必须与Engine组件的defaultHost属性相匹配。
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
## appBase="webapps" appBase属性指定Web应用所在的目录,默认值是webapps 这是一个相对路径,代表Tomcat根目录下webapps文件夹 , 这里可以用相对路径,也可以用绝对路径
## unpackWARs="true" unpackWARs 为是否自动解压war文件,如果设置为true,表示把war文件先展开再运行。 如果为false则直接运行war文件
## autoDeploy="true" autoDeploy,默认为true,表示如果有新的WEB应用放入appBase并且Tomcat在运行的情况下,自动载入应用
<Valve>
## Valve放在Host下,便可以记录该Host处理的所有请求
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
## className:规定了Valve的类型,是最重要的属性, AccessLogValve对象的作用是通过日志记录其所在的容器中处理的所有请求
## directory:指定日志存储的位置,本例中,日志存储在$TOMCAT_HOME/logs目录下
## prefix:指定了日志文件的前缀。 suffix:指定了日志文件的后缀
## pattern:指定记录日志的格式
</Host>
讲了这么多还是没有讲到重点,我们怎么修改自己的项目路径,有两种方法
1、直接修改<Host>的属性 appBase="E:\\jetty" 简单粗暴
2、如果这么简单粗暴的修改,可以在<Host>下面加上这句即可
<Context path="" docBase="E:\\jetty" reloadable="true"/> 不破坏原有结构,可以两个并存
## path代表用浏览器访问的时候的的路径,如http://localhost:8080/web来访问path=”/web” 如果不写就是根路径,你 webapps/ROOT里面就无法访问
## docBase为你的项目的路径,这里同样既可以用相对路径,也可以用绝对路径。设置好了之后就会把项目自动映射到ROOT
## reload able,如果这个属性设为true,tomcat服务器在运行状态下会监视在WEB-INF/classes和WEB-INF/lib目录下class文件的改动,如果监测到有class文件被更新的,服务器会自动重新加载Web应用