Error:(564,37) java: 对于XXXX, 找不到合适方法
在本文中记录的这个错误根本原因是Meavn项目多层依赖的情况下,依赖的没能更新上,不过关于这个报错晚上还有其他的说法——依赖库存在同名jar导致失败等问题,这可可以在网上在参考其他的博客。本问题发生的场景是:
所以当我在对wen进行打包的时候就报了这个错误,说没有找到合适的方法,最初没有发现中间还有api这一层的引用就对dao进行的install的操作来更新依赖:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sz3z5Kda-1634226047244)(F:\typroa\aimages\image-20211014232957582.png)]
但是发现还是不起作用最后在排查pom文件中的依赖时才发现中间还有一层api项目依赖引用,最后是对dao项目进行了install之后又对api项目进行了install,之后再打包web依赖就没有了,具体的相关项目代码(这里进行了简化,主要表现出来调用关系)为:
import com.yonyou.yuncai.cpu.standardgoods.service.IGoodsPlatService;
@Autowired
private IGoodsPlatService goodsService;
goodsService.changeStatus(ids,GoodsStatus.approved.getCode());
public interface IGoodsPlatService {
ServiceResponse<String> pageQueryGoods(Goods goods, PageBean<Goods> pagebean) throws Exception;
void changeStatus(String[] ids, int status, String auditUser, String auditComment) throws Exception ;
void changeStatus(String[] ids,int status) throws Exception ;
}
import com.yonyou.yuncai.cpu.standardgoods.dao.GoodsPlatDao;
public class GoodsPlatServiceImpl implements IGoodsPlatService {
@Autowired
private GoodsPlatDao goodsDao;
@Override
public void changeStatus(String[] ids, int status, String auditUser, String auditComment) throws Exception {
logger.info("修改产品状态为'"+status+"',产品ID"+ids +",批注:"+auditComment);
goodsDao.changeStatus(ids, status, auditUser, auditComment);
}
}
package com.yonyou.yuncai.cpu.standardgoods.dao;
public interface GoodsPlatDao extends GenericDAO<Goods,Long>{
void changeStatus(String ids[], int status);
void changeStatus(String ids[], int status, String changeStatus, String auditComment);
}
|