我正在使用STS(eclipse插件)和maven开发Spring MVC应用程序.
为了创建项目,我按照STS向导进行了一个新的"Spring MVC项目".之后,我向其他项目和库添加了一些依赖项.
但是,当我现在尝试将项目部署到STS的集成vFabric服务器时,我有时会遇到异常:
SEVERE: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/wsa]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
...
Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/app] 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.bouncycastle.asn1.ASN1EncodableVector->org.bouncycastle.asn1.DEREncodableVector->org.bouncycastle.asn1.ASN1EncodableVector]
at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:2179)
...
Run Code Online (Sandbox Code Playgroud)
当发出"maven clean",然后是"maven install"并重新启动服务器时,异常有时不会被抛出并且应用程序正常工作.然而,大多数时候,它不起作用.
我想没有必要扫描bouncycastle依赖项的注释.
我可以以某种方式禁用某些罐子的扫描吗?
我已经尝试添加metadata-complete="true"到我的web.xml并增加堆栈大小而没有结果.
我该怎么做才能解决这个问题?
我有一个用Grails 2.3.8编写的大项目.有时当我使用我的CI部署它时,我得到了以下消息:
由于StackOverflowError,无法完成对Web应用程序[/ ProjectName ## 1152]的注释的扫描.
可能的根本原因包括-Xss的设置太低以及非法循环继承依赖性.正在处理的类层次结构是 [org.bouncycastle.asn1.ASN1EncodableVector-> org.bouncycastle.asn1.DEREncodableVector-> org.bouncycastle.asn1.ASN1EncodableVector]
我已经增加了Xss设置,但很明显,但也许我错了,有一个循环引用:org.bouncycastle.asn1.ASN1EncodableVector-> org.bouncycastle.asn1.DEREncodableVector-> org.bouncycastle.asn1. ASN1EncodableVector
我红了你可以避免检查,我无法删除库因为我需要它.但我不知道如何在Grails中做到这一点.我可以排除他们,但这不是我想要的.
非常感谢任何建议
NIBE
更新 我刚刚解决了这个问题.我删除了buildConfig文件中每个bouncycastle库的痕迹.没有任何依赖或排除痕迹.只需在crypto.2.0中添加插件,一切正常!