错误: 方法不会覆盖或实现超类型的方法、:错误: 找不到符号

本文详细解析了在Maven项目中,当多个模块间存在依赖关系时,更改类名导致的编译错误问题。通过具体案例说明了错误产生的原因,并提供了一套有效的解决方案:先打包被依赖的模块,再打包依赖该模块的项目,以此避免编译错误。

错误: 方法不会覆盖或实现超类型的方法、:错误: 找不到符号

问题描述:如题

出错原因:假设maven中有三个模块。第一个模块依赖后两个模块,在同时更改三个模块中的代码之后(指在模块一和模块三种更改某个类名称),再次打包模块一的时候出现上述错误。此时按Ctrl+单击也可以跳到相应方法。

解决方法:先打包类所在模块,再打包引用类的模块。

符号: 类 ServletContextEvent 位置: 类 com.cmb.fbcbcserver.SpringInit [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[76,38] 不到符号 符号: 类 ServletContextEvent 位置: 类 com.cmb.fbcbcserver.SpringInit [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[10,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[11,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[12,26] 程序包javax.servlet.http不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[13,26] 程序包javax.servlet.http不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[33,8] 无法访问javax.servlet.http.HttpServlet 不到javax.servlet.http.HttpServlet的类文件 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[62,26] 不到符号 符号: 类 ServletConfig 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[99,27] 不到符号 符号: 类 HttpServletRequest 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[99,55] 不到符号 符号: 类 HttpServletResponse 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/log/CleanLogTask.java:[69,46] 无法将类 java.lang.reflect.Field中的方法 get应用到给定类型; 需要: java.lang.Object : com.cmb.fbcbcserver.Scheduler 原因: 无法通过方法调用转换将实际参数com.cmb.fbcbcserver.Scheduler转换为java.lang.Object [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[48,17] 不到符号 符号: 变量 strSysName 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[49,17] 不到符号 符号: 变量 strRootDirKey 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[63,17] 不到符号 符号: 变量 super 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[61,9] 方法不会覆盖实现类型方法 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[85,17] 不到符号 符号: 变量 super 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[100,17] 不到符号 符号: 类 ServletOutputStream 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/reqproc/web/GetLngSms.java:[67,61] 无法访问javax.servlet.http.HttpSession 不到javax.servlet.http.HttpSession的类文件 [INFO] 21 errors [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 16.573 s [INFO] Finished at: 2025-10-17T17:03:40+08:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project FBCBC: Compilation failure: Compilation failure: [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[3,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[4,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[33,36] 不到符号 [ERROR] 符号: 类 ServletContextListener [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[54,40] 不到符号 [ERROR] 符号: 类 ServletContextEvent [ERROR] 位置: 类 com.cmb.fbcbcserver.SpringInit [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/SpringInit.java:[76,38] 不到符号 [ERROR] 符号: 类 ServletContextEvent [ERROR] 位置: 类 com.cmb.fbcbcserver.SpringInit [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[10,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[11,21] 程序包javax.servlet不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[12,26] 程序包javax.servlet.http不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[13,26] 程序包javax.servlet.http不存在 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[33,8] 无法访问javax.servlet.http.HttpServlet [ERROR] 不到javax.servlet.http.HttpServlet的类文件 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[62,26] 不到符号 [ERROR] 符号: 类 ServletConfig [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[99,27] 不到符号 [ERROR] 符号: 类 HttpServletRequest [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[99,55] 不到符号 [ERROR] 符号: 类 HttpServletResponse [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/log/CleanLogTask.java:[69,46] 无法将类 java.lang.reflect.Field中的方法 get应用到给定类型; [ERROR] 需要: java.lang.Object [ERROR] : com.cmb.fbcbcserver.Scheduler [ERROR] 原因: 无法通过方法调用转换将实际参数com.cmb.fbcbcserver.Scheduler转换为java.lang.Object [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[48,17] 不到符号 [ERROR] 符号: 变量 strSysName [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[49,17] 不到符号 [ERROR] 符号: 变量 strRootDirKey [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[63,17] 不到符号 [ERROR] 符号: 变量 super [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[61,9] 方法不会覆盖实现类型方法 [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[85,17] 不到符号 [ERROR] 符号: 变量 super [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/Scheduler.java:[100,17] 不到符号 [ERROR] 符号: 类 ServletOutputStream [ERROR] 位置: 类 com.cmb.fbcbcserver.Scheduler [ERROR] /C:/Users/YC02864/IdeaProjects/LP02_FBCBC/LP02_CBC/src/main/java/com/cmb/fbcbcserver/reqproc/web/GetLngSms.java:[67,61] 无法访问javax.servlet.http.HttpSession [ERROR] 不到javax.servlet.http.HttpSession的类文件 [ERROR] -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException 进程已结束,退出代码1
最新发布
10-18
错误的原因可能有几种可能性。首先,这个错误可能是由于方法的签名不正确所导致的。确保你的方法与父类接口中的方法具有相同的名称,参数类型和返回类型。其次,这个错误可能是由于你的方法没有使用`@Override`注解所引起的。`@Override`注解用于指示该方法是在重写父类接口中的方法。如果你的方法没有正确地重写父类接口中的方法,编译器会报告错误。最后,这个错误可能是由于项目的依赖问题导致的。确保你的项目的Tomcat服务器依赖被正确导入,并且项目的SDK版本选择正确。检查这些可能的原因,并相应地进行修正。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ method does not override or implement a method from a supertype java:方法不会覆盖实现类型方法](https://blog.youkuaiyun.com/T_Y_F_/article/details/126962902)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [解决办法|运行Java Web项目时 爆红“不到符号方法不会覆盖实现类型方法,程序包javax.servlet不...](https://blog.youkuaiyun.com/qq_58025594/article/details/130989603)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值