Giter Site home page Giter Site logo

Comments (24)

noear avatar noear commented on July 21, 2024

有可能是 asm 版本冲突了。。。solon.aspect 用的是 9.2 版本

from solon.

noear avatar noear commented on July 21, 2024

感觉反馈。。。我试了你那个 demo :

确实出错了。原因,可能跟你的服务类(TestBaseService)的基类(TestBase)是虚似类有关。你先改成接口用,就好了。

//具体,我再研究下是什么原因

from solon.

noear avatar noear commented on July 21, 2024

1.9.4-M1 版本,已解决这个问题。。。麻烦试一下

from solon.

zengyufei avatar zengyufei commented on July 21, 2024

1.9.4-M1 版本, 确认解决,测试通过

from solon.

noear avatar noear commented on July 21, 2024

1.9.4 已发布:)

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

同样问题

版本: solon 1.10.3
jdk: 18

报错信息

java.lang.ClassFormatError: Duplicate method name "update" with signature "(Lcom.tony.log4m.base.BaseEntity;)Ljava.lang.Object;" in class file com/tony/log4m/service/impl/$Proxy_TagServiceImpl
	at java.base/java.lang.ClassLoader.defineClass1(Native Method)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013)
	at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:875)
	at org.noear.solon.aspect.asm.AsmProxyClassLoader.transfer2Class(AsmProxyClassLoader.java:14)
	at org.noear.solon.aspect.asm.AsmProxy.newProxyInstance(AsmProxy.java:126)
	at org.noear.solon.aspect.BeanInvocationHandler.<init>(BeanInvocationHandler.java:40)
	at org.noear.solon.aspect.BeanInvocationHandler.<init>(BeanInvocationHandler.java:26)
	at org.noear.solon.aspect.BeanProxy.getProxy(BeanProxy.java:33)
	at org.noear.solon.core.BeanWrap.proxySet(BeanWrap.java:113)
	at org.noear.solon.aspect.AspectUtil.binding(AspectUtil.java:32)
	at org.noear.solon.aspect.integration.XPluginImp.lambda$start$1(XPluginImp.java:23)
	at org.noear.solon.core.AopContext.lambda$tryCreateBean$10(AopContext.java:398)
	at org.noear.solon.core.AopContext.tryCreateBean0(AopContext.java:427)
	at org.noear.solon.core.AopContext.tryCreateBean(AopContext.java:395)
	at org.noear.solon.core.AopContext.lambda$beanScan$9(AopContext.java:354)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
	at java.base/java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:510)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at org.noear.solon.core.AopContext.beanScan(AopContext.java:349)
	at org.noear.solon.core.AopContext.beanScan(AopContext.java:320)
	at org.noear.solon.SolonApp.run(SolonApp.java:128)
	at org.noear.solon.Solon.start(Solon.java:149)
	at org.noear.solon.Solon.start(Solon.java:99)
	at com.tony.log4m.Log4MApplication.main(Log4MApplication.java:7)

相关类信息

@Service
public class TagServiceImpl extends CrudServiceImpl<TagDao, Tag, TagDTO, TagConvert> implements TagService {

    @Override
    public TagDTO update(Tag tag) {
        return super.update(tag);
    }

}
public abstract class CrudServiceImpl<M extends BaseMapper<T>, T extends BaseEntity, E, C extends BasicConvert> implements CrudService<T, E> {

    public static DbContext db() {
        return DbConfig.master;
    }

    @Inject
    private C convert;

    @Inject
    private M dao;


    @Override
    public E update(E e) {
        if (e == null) {
            return null;
        }

        T t = toSource(e);
        return update(t);
    }
}
public interface CrudService<T extends BaseEntity, E> {

    E update(T t);

    E update(E e);

}

from solon.

noear avatar noear commented on July 21, 2024

麻烦试一下 jdk11 是否正常?

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

也报

image

from solon.

noear avatar noear commented on July 21, 2024

好的,我实验一下

from solon.

noear avatar noear commented on July 21, 2024

我根据你上面提供的信息,实验 了一下。。。运行是正常的,麻烦你帮忙看一下,这代码是否有哪里不对:

https://github.com/noear/solon/tree/dev/_solon_extend/solon.aspect/src/test/java/test2

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

重载多一个 update

public abstract class CrudServiceImpl<M , T extends BaseEntity, E, C extends BasicConvert> implements CrudService<T, E> {

    public static Object db() {
        return null;
    }

    @Inject
    private C convert;

    @Inject
    private M dao;


    @Override
    public E update(E e) {
        if (e == null) {
            return null;
        }

        //T t = toSource(e);
        return update(e);
    }

    @Override
    public E update(T t) {
        if (t == null) {
            return null;
        }

        return null;
    }
}

from solon.

noear avatar noear commented on July 21, 2024

再重写一个,确实出来了。。。建议写简单点,或者用 @component 注解暂代下(它不支持函数拦截)

from solon.

noear avatar noear commented on July 21, 2024

会尽快处理此问题

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

OK, 我先注掉一个

from solon.

noear avatar noear commented on July 21, 2024

调整好了,现在发布一个:1.10.5-M1 的测试版本。。。发布完成后,我会再通知你。到时,帮忙测试一下

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

from solon.

noear avatar noear commented on July 21, 2024

已发布半小时了,不过**仓库还是没有。。。还得再等。

from solon.

noear avatar noear commented on July 21, 2024

1.10.5-M1 ,**仓库可以拉取了!麻烦试下。

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

拉到了, 可以启动

from solon.

noear avatar noear commented on July 21, 2024

赞。那你先玩着。。。有问题,随时反馈:)

from solon.

noear avatar noear commented on July 21, 2024

建议加到 qq 群里,方便交流

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

现在基本不使用QQ了,有没有tg的群

from solon.

noear avatar noear commented on July 21, 2024

solon 1.10.5 正试版已发布。。。tg 是啥东西啊?

from solon.

russleung44 avatar russleung44 commented on July 21, 2024

Telegram...

from solon.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.