From eaa6be0e51129f1c68555a3a7c5fc5075dc0cf6b Mon Sep 17 00:00:00 2001 From: hewei Date: Wed, 25 Apr 2018 18:40:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=AF=E5=8F=98=E5=8F=82=E6=95=B0=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/itfsw/mybatis/generator/plugins/tools/ObjectUtil.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/test/java/com/itfsw/mybatis/generator/plugins/tools/ObjectUtil.java b/src/test/java/com/itfsw/mybatis/generator/plugins/tools/ObjectUtil.java index 2a9d9b5..3e89ae5 100644 --- a/src/test/java/com/itfsw/mybatis/generator/plugins/tools/ObjectUtil.java +++ b/src/test/java/com/itfsw/mybatis/generator/plugins/tools/ObjectUtil.java @@ -18,7 +18,6 @@ package com.itfsw.mybatis.generator.plugins.tools; import com.sun.deploy.util.StringUtils; -import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -134,7 +133,7 @@ public class ObjectUtil { Class[] parameterTypes = method.getParameterTypes(); // !! mapper动态代理后VarArgs检查有问题 // 暂时只检查前几位相同就假设为可变参数 - int check = args.length > 0 ? (args[args.length - 1] instanceof Array ? args.length - 1 : args.length) : 0; + int check = parameterTypes.length > 0 ? parameterTypes.length - (parameterTypes[parameterTypes.length - 1].getName().startsWith("[") ? 1 : 0) : 0; for (int i = 0; i < check; i++) { Class parameterType = parameterTypes[i]; if (!(parameterType.isAssignableFrom(args[i].getClass()))) {