2011-08-28 9 views
0

ClassParser를 사용하여 메서드 매개 변수 이름을 얻으려고하는데 ClassParser 생성자가 클래스 이름을 매개 변수로 사용합니다. 예를 들어ClassParser 생성자 매개 변수를 지정하는 방법?

ClassParser parser = new ClassParser("Main.class"); 

String 클래스에 매개 변수를 설정하려고합니다. "String .class "하지만 작동하지 않습니다. "java.lang.String.class"도 사용했지만 작동하지 않습니다. 마지막으로 this.getClass(). getResource ("java/lang/String"). toString()을 시도했으나 작동하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?

감사

+0

이 ClassParser 클래스는 어디에 있습니까? –

답변

0

BCEL이 맞나요? 그렇다면 ClassParser는 클래스 이름 매개 변수가 아니라 입력 스트림, 파일 이름 또는 zip 파일 및 항목 (a.k.a jar 파일 항목)을 사용합니다. 그게 당신의 클래스가 jar 파일의 일부가 아니라면,

ClassParser parser = new ClassParser("your/package/name/Main.class"); 

이 적용될 것입니다.

+0

예, javadoc (http://commons.apache.org/bcel/apidocs/org/apache/bcel/classfile/ClassParser.html#constructor_summary)에서는 모든 것을 명확하게 설명합니다. 생성자는 파일 이름 및/또는 InputSteram을 허용합니다. – umbr

+1

문제는 내 수업 중 일부가 항아리의 일부라는 것입니다. –