을 MyClass 클래스의 멤버에 액세스 할 수는java.lang.IllegalAccessException : 나는 다음과 같은 오류를 받고 있어요 반사 API를 사용하는 동안 클래스 zyxuSimpleCompileTest "가"수정으로
java.lang.IllegalAccessException: Class z.y.x.u.SimpleCompileTest can not access a member of class MyClass with modifiers ""
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
at java.lang.Class.newInstance0(Class.java:351)
at java.lang.Class.newInstance(Class.java:310)
at z.y.x.u.SimpleCompileTest.reflectionCall(SimpleCompileTest.java:44)
at z.y.x.f.RunFunctionality.doPost(RunFunctionality.java:116)
at z.y.x.f.RunFunctionality.doGet(RunFunctionality.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
이 내 Psedu 코드
입니다public static void reflectionCall() {
ClassLoader classLoader = SimpleCompileTest.class.getClassLoader();
try{
Class aClass = classLoader.loadClass("MyClass");
Object t = aClass.newInstance();
System.out.println("aClass.getName() = " + aClass.getName());
Method method = aClass.getDeclaredMethod ("myMethod", null);
method.setAccessible(true);
method.invoke(t, null);
.....
}
다음과 같은 오류가
Object t = aClass.newInstance();
T 일어나고 오류를 던지고 그는 파일이 MyClass.java의 내용이 어떤 도움이 더 감사 문제 무엇인지 알아낼 수
public class MyClass {
public MyClass() {
// TODO Auto-generated constructor stub
}
public void myMethod(){
System.out.println("My Method Called");
}
}
하지이며, 실행 중에 클래스 경로에 동적으로 추가되는 jar 파일에 있습니다 MyClass.class.
클래스가 무엇입니까? 그것은 (오류에서) 생성자처럼 기본 가시성, 즉 보인다. 액세스 수정자가 없습니다. –