Meituan-Dianping / Robust

Robust is an Android HotFix solution with high compatibility and high stability. Robust can fix bugs immediately without a reboot.
Apache License 2.0
4.42k stars 807 forks source link

groovy.lang.MissingPropertyException: No such property: thisClass for class: javassist.expr.Cast #253

Open ljzjohnliu opened 6 years ago

ljzjohnliu commented 6 years ago

异常类型:生成patch时候编译异常

Robust版本:如:0.4.78

Gradle版本:如:2.10

系统:如:ubuntu

代码片段,对如下方法进行修改 生成patch就会出异常

@Modify
@Override
public int createRole(Context context, String serverId) {

// Log.d("test", "OpenController, createRole: error!!! = "); // Toast.makeText(context, "createRole error!!!", Toast.LENGTH_SHORT).show(); Log.d("ljz", "OpenController, createRole: Fixed!!! = "); Toast.makeText(context, "createRole Fixed!!!", Toast.LENGTH_SHORT).show(); // TODO Auto-generated method stub GameController.getInstance().createGameRole((Activity) context, serverId); return 0; }

堆栈/日志:

Warning class name d(java.lang.String,java.lang.String) can not find in mapping !! Warning class name makeText(android.content.Context,java.lang.CharSequence,int) can not find in mapping !! Warning class name show() can not find in mapping !! :PPSGameSDK:transformClassesWithAutoPatchTransformForRelease FAILED

FAILURE: Build failed with an exception.

BUILD FAILED

tanhaoshi commented 6 years ago

我也是这个错误:

异常类型:生成patch时候编译异常

Robust版本:如:0.4.78

Gradle版本:如:2.14

系统:如windows

代码片段,对如下方法进行修改 生成patch就会出异常 groovy.lang.MissingPropertyException: No such property: thisClass for class: javassist.expr.Cast 提示找不到这个属性

tanhaoshi commented 6 years ago

@ljzjohnliu 我把Robust版本切换成 0.3.2的 可以生成补丁了,你可以试试。 Caused by: java.lang.RuntimeException: auto patch end successfully at robust.gradle.plugin.AutoPatchTransform.transform(AutoPatchTransform.groovy:105) at com.android.build.api.transform.Transform.transform(Transform.java:290) at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:178) at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:174) at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:156) at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:173) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75) image