`
zxsqi
  • 浏览: 28262 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

tomcat 7.XX X 加载应用出现 StackOverflowError 的问题

阅读更多

      最近使用tomcat 7.XXXX年版本搭建web应用,在应用部署时出现以下错误:

 

严重: ContainerBase.addChild: start: 

org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/HSN]]

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)

at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1263)

at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1948)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)

at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

at java.util.concurrent.FutureTask.run(FutureTask.java:138)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at java.lang.Thread.run(Thread.java:662)

Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/HSN] due to a StackOverflowError. Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies. The class hierarchy being processed was [org.apache.commons.httpclient.HttpException->org.apache.commons.httpclient.URIException->org.apache.commons.httpclient.HttpException]

at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:2144)

at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2090)

at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1965)

at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1931)

at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1916)

at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1330)

at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:889)

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:386)

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5416)

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

... 11 more

 

 

    解决方法:修改apache-tomcat-7.0.62\conf\catalina.properties 文件,在tomcat.util.scan.DefaultJarScanner.jarsToSkip值后添加 "*.jar",成功能解决此问题

分享到:
评论

相关推荐

    windows下部署java项目oracle数据库借鉴.pdf

    - **表现形式**:`java.lang.StackOverflowError` - **解决方案**:优化代码逻辑,减少递归调用或嵌套调用的层数。 #### 三、在生产环境中优化Tomcat内存配置 为了防止在生产环境中出现JVM内存溢出问题,可以...

    windows下部署java项目oracle数据库宣贯.pdf

    - **Stack Overflow** (`java.lang.StackOverflowError`) - **原因**: 函数调用层数太多,导致栈空间溢出。 - **解决方法**: 修改程序逻辑减少递归深度或使用其他算法替代递归。 2. **优化Tomcat内存配置** - *...

    windows下部署java项目 oracle 数据库.pdf

    - **错误信息**: `java.lang.StackOverflowError` - **原因**: 当函数调用层数过多导致栈区溢出。通常函数调用不会超过上千层,但递归调用层数过多可能会导致栈溢出。 - **解决方法**: 修改程序逻辑,避免过深的...

    linux解决Tomcat内存溢出的问题

    Linux系统下,Tomcat服务器遇到内存溢出问题时,往往是由于Java应用程序的内存管理不当导致的。内存溢出是程序运行过程中的一种常见错误,当程序请求的内存超过了系统分配的最大值时,就会触发该错误。这里我们将...

    关于java堆内存溢出的几种情况

    【情况六】:`java.lang.StackOverflowError` 这是线程栈溢出错误,通常是由于方法调用层次过深或者无限递归。解决策略包括优化程序设计,减少不必要的方法调用,或者增大线程栈大小(通过`-Xss`参数)。 总结来说...

    JVM内存配置优化

    3. **`java.lang.StackOverflowError`**:这表示栈内存溢出,通常是由无限递归或者过深的递归导致的。 #### 三、Tomcat中的JVM配置优化 对于使用Tomcat的应用,可以通过修改其配置文件来进行JVM的优化。以`...

    Java虚拟机讲解笔记.docx

    - **异常**: 如果线程请求的栈深度大于虚拟机允许的最大深度,则会抛出`StackOverflowError`异常。 ##### 4. 程序计数器 (Program Counter Register) - **功能**: 当前线程所执行的字节码指令地址。 - **特点**: ...

    Java面试八股文十万字总结.docx

    - **StackOverflowError (SOF)**:栈溢出,递归调用过深或循环引用导致。 **26. 简述线程、程序、进程的基本概念以及它们之间的关系** - **进程**:操作系统资源分配的基本单位。 - **程序**:一系列指令和数据的...

    java超有用的面试题目

    - **StackOverflowError**:当程序栈深度超出限制时抛出。 - **PermGenSpaceError**:永久代空间不足,现已替换为Metaspace。 #### JVM常用参数 - `-Xms`、`-Xmx`:设定堆内存初始和最大值。 - `-XX:+UseG1GC`:...

Global site tag (gtag.js) - Google Analytics