Changing Android source in ViewGroup.java

三世轮回 提交于 2019-12-11 04:26:20

问题


I want to make some changes in one function in ViewGroup.java. I already had the sources compiled, so I am only compilling the part that I changed last, with the command

make framework

but when I start the emulator, it crashes with the error

--------- beginning of crash
01-29 22:22:30.570   280   280 E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: main
01-29 22:22:30.570   280   280 E AndroidRuntime: java.lang.RuntimeException: Missing class when invoking static main com.android.server.SystemServer
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.RuntimeInit.invokeStaticMain(RuntimeInit.java:205)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.RuntimeInit.applicationInit(RuntimeInit.java:326)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.RuntimeInit.zygoteInit(RuntimeInit.java:278)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.handleSystemServerProcess(ZygoteInit.java:458)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.startSystemServer(ZygoteInit.java:545)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:608)
01-29 22:22:30.570   280   280 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: com.android.server.SystemServer
01-29 22:22:30.570   280   280 E AndroidRuntime:    at java.lang.Class.classForName(Native Method)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at java.lang.Class.forName(Class.java:324)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at com.android.internal.os.RuntimeInit.invokeStaticMain(RuntimeInit.java:203)
01-29 22:22:30.570   280   280 E AndroidRuntime:    ... 5 more
01-29 22:22:30.570   280   280 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.android.server.SystemServer" on path: DexPathList[[zip file "/system/framework/services.jar", zip file "/system/framework/ethernet-service.jar", zip file "/system/framework/wifi-service.jar"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
01-29 22:22:30.570   280   280 E AndroidRuntime:    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
01-29 22:22:30.570   280   280 E AndroidRuntime:    at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
01-29 22:22:30.570   280   280 E AndroidRuntime:    ... 8 more
01-29 22:22:30.570   280   280 E AndroidRuntime:    Suppressed: java.io.IOException: No original dex files found for dex location /system/framework/services.jar
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexFile.openDexFileNative(Native Method)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexFile.openDexFile(DexFile.java:295)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexFile.<init>(DexFile.java:80)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexFile.<init>(DexFile.java:59)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexPathList.loadDexFile(DexPathList.java:279)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexPathList.makePathElements(DexPathList.java:248)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.DexPathList.<init>(DexPathList.java:120)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.BaseDexClassLoader.<init>(BaseDexClassLoader.java:48)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at dalvik.system.PathClassLoader.<init>(PathClassLoader.java:38)
01-29 22:22:30.570   280   280 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.handleSystemServerProcess(ZygoteInit.java:451)

Does this means that I can't change this file? Is there a way to do this? Thanks

来源:https://stackoverflow.com/questions/41926906/changing-android-source-in-viewgroup-java

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!