gpt4 book ai didi

grails - 如何从服务调用 log.error()?总是给出“没有这样的属性 : log for class: gi. mypackage.$UserServiceImplementation

转载 作者:行者123 更新时间:2023-12-02 15:03:34 28 4
gpt4 key购买 nike

在 Grails 3.3.8 中,使用基于接口(interface)的新 Grails 服务,我的 UserService是这样的:

interface IUserService {
User get(Serializable id)
List<User> list(Map args)
Long count()
void delete(Serializable id)
User save(User user)
}

@Service(User)
@Transactional
abstract class UserService implements IUserService {
@Override
User save(User user) {
log.error("mymessage")
}

当我调用我的 userService.save(user)方法,无法解析 log .它可以从开箱即用的 Controller 中工作。如何将日志实例放入 Grails 服务?

错误是:

No such property: log for class: gi.mypackage.$UserServiceImplementation

最佳答案

基于 logger names 上的文档部分, 服务于 grails-app/services/应该有 log自动注入(inject)。但是,如果您的服务在其他地方,例如 src/main/groovy/ ,您需要添加 @Slf4j 注释到您的服务类。

@Service(User)
@Transactional
@Slf4j
abstract class UserService implements IUserService {
@Override
User save(User user) {
log.error("mymessage")
}

关于grails - 如何从服务调用 log.error()?总是给出“没有这样的属性 : log for class: gi. mypackage.$UserServiceImplementation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54738702/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com