Tomcat启动时项目重复加载,导致资源初始化两次的问题

最近在项目开发测试的时候,发现Tomcat启动时项目重复加载,导致资源初始化两次的问题

导致该问题的原因:

如下图:在Eclipse中将Server Locations设置为“Use Tomcat installation(takes control of Tomcat installation)”时,

就会导致该问题!

根本原因:

解决方法一:

把server.xml中的context删除掉

但这会导致一个问题:

在Web Modules中你将看不到我们的项目

解决方法二:

在Tomcat的目录下随便创建一个目录,例如“webroot”

修改Server.xml,Host的appBase指定为新建的目录“webroot”,而Context的目录这里使用相对目录“../webapps/myapp-web”,

注意:后面必须带项目名称“myapp-web”

其实最简单的就是不要修改“Server Locations”配置!

时间: 08-25

Tomcat启动时项目重复加载,导致资源初始化两次的问题的相关文章

Tomcat启动时项目重复加载的问题

最近在项目开发测试的时候,发现Tomcat启动时项目重复加载,导致资源初始化两次的问题 导致该问题的原因: 如下图:在Eclipse中将Server Locations设置为"Use Tomcat installation(takes control of Tomcat installation)"时, 就会导致该问题! 根本原因: 解决方法一: 把server.xml中的context删除掉 但这会导致一个问题: 在Web Modules中你将看不到我们的项目 解决方法二: 在Tom

Tomcat启动时项目重复加载,导致资源初始化两次!

一.现象: 每次启动Tomcat 的时候,工程会被加载两次 二.原因: 在tomcat/conf/server.xml配置虚拟目录引起,如下配置: 我们在Host标签里配置了appBase="webapps",tomcat会去加载一次应用. 在<Context>里配置了一次docBase,tomcat会又去加载一次引用. 导致项目会加载二次. 三.解决: 去掉appBase="webapps"即可! <Host name="localho

tomcat启动项目被重新加载,导致资源初始化两遍

之前没有遇到过这个问题,配了三天的项目了,惊人啊!!!各种怪问题全被我赶上了.真有种骂人的冲动. tomcat启动项目时,项目资源被加载两遍. 原因:配置虚拟目录导致,项目被重新加载. <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespa

Tomcat启动时载入某个servlet

当我们做一个java项目时,有几个功能都须要载入servlet或者实现某个共同的方法,尽管我们一味地在每个功能中依次载入也不是不能够,可是当某个servlet 或者方法被频繁地载入和应用.我们将面向对象的思想置于不顾却也真的说只是去. 所以.对于这类的servlet我们须要在Tomcat启动时直接载入,比方初始化信息.读取配置文件等需求时,我们就能够通过web.xml的配置文件对来实现这个需求: 首先,AbstractItemServlet 类中封装了相应的Init方法: <span style

tomcat启动时JVM内存大小,以免出现内存溢出

问题: 主要是2个内存溢出的错误. 首先是:java.lang.OutOfMemoryError: Java heap space 其次是:java.lang.OutOfMemoryError: PermGen space 最终解决办法[我是4G内存,请适当修改大小]: [Windows]在catalina.bat的第一行增加: set JAVA_OPTS=-Xms512m -Xmx900m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSiz

Tomcat启动时,自动访问本地servlet

通过监听器来实现 1.自定义一个类 CallLocationServelt 实现  ServletContextListener 并覆盖其  contextInitialized(ServletContextEventarg0)方法 public void contextInitialized(ServletContextEvent arg0) { // TODO Auto-generated method stub System.out.println("CallLocationServelt

tomcat启动时servlet-api.jar not loaded.

今天自己配置一个servlet技术项目,建立的一个网站项目ServletPa,目录结构如下.但是在tomcat启动时,出现servlet-api.jar not loaded. 十月 31, 2015 10:50:43 下午 org.apache.catalina.core.AprLifecycleListener init信息: The APR based Apache Tomcat Native library which allows optimal performance in prod

Tomcat启动时自动加载Servlet

1.想做一个服务启动时自动启动一不停止的获取订阅功能 2.之前是做一个Jsp页面请求servlet来触发方法 3.现在实现Tomcat启动时自动加载Servlet 1.Tomcat中启动Servlet时,只需要在Servlet所在的工程的配置文件web.xml中写成如下即可 <!-- 自动启动订阅接口 --> <servlet> <servlet-name>TimeServlet</servlet-name> <servlet-class>ser

如何在tomcat启动时自动加载一个类

有时候在开发web应用的时候,需要tomcat启动后自动加载一个用户的类,执行一些初始化方法,如从数据库中加载业务字典到内存中,因此需要在tomcat启动时就自动加载一个类,或运行一个类的方法. 可以采用在WEB-INF/web.xml中添加一个监听程序(ServletContextListener配置项),步骤如下:1) 增加一个监听程序 MyServletContextListener.java, 实现javax.servlet.ServletContextListener接口 packag