tomcat啟動時錯誤:Failed to start component [StandardEngine[Catalina].StandardHost[localhost].錯誤
Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/omkwt] 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]
解決辦法 一:
進入tomcat的安裝目錄進行清理緩存,找到work文件夾。
此文件下有個catalina目錄(tomcat小名叫catalina),work目錄下的文件都可以刪除。
work目錄下有一個catalina目錄。刪除work中的tomcat目錄后,緩存已經刪除。
解決辦法 二:
看到后面的錯誤信息
org.bouncycastle.asn1.ASN1EncodableVector 是出在這個類上,
這是因為tomcat啟動會去掃描jar,這個類是出現在 bcprov .jar這個包。所以在tomcat的conf目錄里面 catalina.properties的文件中
在 tomcat.util.scan.StandardJarScanFilter.jarsToSkip=里面加上bcprov.jar過濾啟動不會報錯了
具體如下:
這是因為tomcat啟動會去掃描jar,這個類是出現在 bcprov .jar這個包。所以在tomcat的conf目錄里面 catalina.properties的文件中
在 tomcat.util.scan.StandardJarScanFilter.jarsToSkip=里面加上bcprov.jar過濾啟動不會報錯了
具體如下:


可能還有其他更有效的方法,博主知道的都提供在這里了,希望對大家有所幫助。