문제는 제목에 이미에 기본 생성자를 추가하는 주석을 작성하고 그것이 question I asked earlier의 적은 특정 버전의 방법 : 당신은 자바 주석을 작성하려면 어떻게자바 : 클래스
즉 추가하는 기본 생성자를 클래스에? http://projectlombok.org/
는 기술적으로, 당신은 자바 컴파일러로 연결해야합니다 :
문제는 제목에 이미에 기본 생성자를 추가하는 주석을 작성하고 그것이 question I asked earlier의 적은 특정 버전의 방법 : 당신은 자바 주석을 작성하려면 어떻게자바 : 클래스
즉 추가하는 기본 생성자를 클래스에? http://projectlombok.org/
는 기술적으로, 당신은 자바 컴파일러로 연결해야합니다 :
은 이미 수행하는 프로젝트가있다. Java 코드 컴파일은 단계적으로 수행됩니다. 먼저 모든 소스가 수집됩니다. 그런 다음 파서가 AST를 만듭니다. 코드 생성 단계에서는 AST를 바이트 코드로 변환합니다.
어노테이션 처리기는 AST가 빌드 된 후 바이트 코드가 생성되기 전에 실행됩니다. AST를 수정하여 결과 클래스 파일을 수정할 수 있습니다.
이 블로그 게시물은 세부 사항을 포함 : 나는 롬복을 알고있는 것처럼 http://notatube.blogspot.com/2010/11/project-lombok-trick-explained.html
, 그것은 사용자 정의 주석에 의해 트리거 얻을 추가 AST 변압기를 작성하는 모든 도구가 포함되어 있습니다.
정말 (하나의 주석에서이 좋아 당신이 할 수 내 특정 질문에 대한 링크를 따라 가면 참조하십시오). 게다가 그게 어떻게 완료되었는지 궁금해서 ... – achingfingers
링크를 가져 주셔서 감사합니다! – achingfingers
내가 추가 한 블로그 게시물을 참조하십시오. 요약하면 파서 (AST를 생성 함) 이후와 AST에서 바이트 코드 생성 전에 Java 컴파일러에 연결합니다. AST를 변경하여 결과를 수정합니다. –
AFAIK는 일반적으로 지원되지 않습니다.
Project Lombok이 작업을 수행하지만 일부 해킹 AFAIK를 사용합니다.
https://blogs.oracle.com/darcy/entry/properties_via_annotation_processing
참조 [APT] (http://docs.oracle.com/javase/7/docs/technotes/guides/apt/) – Bohemian