java.lang.IllegalArgumentException:錯誤
報錯內容:
D:\eclipse\workspace\Proxy/bin/com/sxw/simulationJdkProxy/$Proxy0.java
java.lang.IllegalArgumentException: argument type mismatch
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.sxw.simulationJdkProxy.Proxy.newProxyInstance(Proxy.java:77)
at com.sxw.simulationJdkProxy.Test.main(Test.java:7)
Exception in thread "main" java.lang.NullPointerException
at com.sxw.simulationJdkProxy.Test.main(Test.java:8)
代碼部分:
//編譯部分
//編譯器
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
//獲取文件管理器
StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
//獲取文件
Iterable fileMag=fileManager.getJavaFileObjects(fileName);
//編譯任務
CompilationTask task=compiler.getTask(null, fileManager, null, null, null, fileMag);
//進行編譯
task.call();
fileManager.close();
//load到內存中
ClassLoader cl = ClassLoader.getSystemClassLoader();
Class class1 = cl.loadClass("com.sxw.simulationJdkProxy.$Proxy0");
//得到構造器,根據構造器創建對象
Constructor constructor =class1.getConstructor(interf);
return constructor.newInstance(new Car());
2019-07-29
D:\eclipse\workspace\Proxy/bin/com/sxw/simulationJdkProxy/$Proxy0.java
這個目錄我感覺不大對