2011-12-31 3 views
3

프로젝트의 보일러 코드 생성을 돕는 코드 생성 툴 작업.Ruby의 Java 소스 코드 파서

생성기는 erb 템플릿이있는 루비로 작성되며 프로젝트 자체는 Java로 작성됩니다.

이제 Java 소스 파일을 파싱하고 .java 파일에서 문자열을 가져오고 가져 오기, 메소드, 필드, 클래스 이름 등을 가져 오도록 탐색 할 수있는 루비 보석/라이브러리를 찾고 있습니다. 특정 메서드 및 코드를 추가하는 등 (일종의 jQuery 선택기).

이미 내가 사용할 수있는 솔루션이 있다면 javaclass-rb 라이브러리와 비슷하지만 .class 파일의 바이트 코드를 구문 분석하기위한 것입니다.

저는 ANTLR과 루비 어댑터를 사용할 수 있지만, 기존 솔루션이 있기를 바랍니다.

감사합니다.

+1

JRuby는 괜찮습니까? 그런 다음 [javaparser] (http://code.google.com/p/javaparser/)와 같은 자바 라이브러리를 사용할 수 있습니다. 나는 이것을 수행하기 위해 순수한 Ruby 라이브러리를 모른다. –

+0

감사합니다 @Niklas, 그렇게 많은 가능성을 열어주는 훌륭한 아이디어입니다. Ruby를 주로 간결한 언어와 erb로 사용하고 있기 때문에 JRuby로 전환하는 것이 좋습니다. 여전히 순수한 루비 라이브러리가 있기를 바랄 것이지만, 지금은 괜찮습니다. –

+0

이 경우 제안을 답변으로 게시하겠습니다. –

답변

4

JRuby은 Ruby와 Java 객체 간의 상호 작용을 쉽게하는 JVM 상단의 Ruby 구현체입니다. 이를 사용하기로 결정한 경우 임의의 Java 라이브러리를 사용하여 javaparser과 같은 태스크를 해결할 수 있습니다.

+0

Java 중심 프로젝트에 대한 논리적 선택 인 것 같습니다. – d11wtq

+0

고맙습니다. –