![](/img/trans.png)
[英]"Caused by: java.lang.ClassNotFoundException: javax.servlet.ServletConfig" when running Spring Boot program
[英]Just upgraded from Spring Boot 2.7.4 to Spring Boot 3.0.0, caused error Caused by: java.lang.NoClassDefFoundError: javax.servlet.Filter
將應用程序從 Spring 2.7.4 升級到 3.0.0 嘗試運行時出現以下異常
java.lang.IllegalStateException: Failed to introspect Class [org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration] from ClassLoader [jdk.internal.loader.ClassLoaders$AppClassLoader@eaa1a4da]
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:483)
at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:360)
at org.springframework.util.ReflectionUtils.getUniqueDeclaredMethods(ReflectionUtils.java:417)
Caused by: java.lang.NoClassDefFoundError: javax.servlet.Filter
at java.base/java.lang.Class.getDeclaredMethodsImpl(Native Method)
at java.base/java.lang.Class.getDeclaredMethods(Class.java:1180)
at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:465)
誰能幫我解決這個問題?
...
Spring Boot 3.0 已將所有依賴項從 Java EE 遷移到 Jakarta EE API。 盡可能選擇 Jakarta EE 10 兼容依賴項,包括:
...
- 雅加達 Servlet 6.0
...
因此,導入從javax.servlet
更改為jakarta.servlet
。
您應該將javax.*
更改為jakarta.*
在項目中適用的任何地方遷移到 Spring boot 3.0.0
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.