2010-06-25 3 views
5

.java 파일을 가져 와서 파일의 첫 번째 클래스를 인식하고이 클래스의 주석, 메서드 및 특성에 대한 정보를 얻고 싶습니다.Perl 또는 Python에서 Java 클래스 구문 분석

이미 두 언어로 된 모듈이 있습니까? 그것도 할 수있는 간단한 정규 표현식을 만들 수 있지만 정규식에서 클래스/메서드의 끝을 나타내는 중괄호를 인식하는 방법을 알지 못합니다.

+4

아니요, 정규식은 적합하지 않습니다. 'class Foo {String s = "@Annotation not here"를 고려하십시오; }'. –

+0

그래, 그래야 문법이나 오토 마타를 써야 할거야. 이런 종류의 일을 도울 수있는 perl/python 모듈이 있습니까? – Rafael

+0

@Bart 사실, 큰 따옴표로 묶어서는 안된다. 문제는 중괄호를 사용하는 것입니다. 일단 정규 표현식에서 얼마나 많은 여는 중괄호와 닫는 중괄호가 실제로 발생했는지 파악할 수 없으면됩니다. –

답변

2

Jython 안에 자바 클래스를로드하면 필요한 정보를 찾기 위해 인트로 스펙 션을 사용할 수 있습니다.

0

정보를 추출 할 수있는 javadoc 인식 프로그램을 사용하는 대신 왜 이것을 perl/python으로 시도하고 있습니까?

0

나는 에 대한 Inline::Java는 해당 인터페이스 실행이되면, 당신은 쉽게 방법을 액세스하고 클래스에서 속성 수, 펄에서 자바 클래스에 접근 건의 할 것입니다.