2012-02-22 3 views
6

Java SE 5와 Java SE 6에서 실행해야하는 프로젝트에서 일하고 있습니다. 최근에 생성 된 코드에 @Generated 개의 주석을 추가하는 도구를 사용하기 시작했으며 이러한 주석을 유지하려고합니다. javax.annotation.Generated은 Java 5 EE 및 Java 6 SE and later에 있지만 Java 5 SE API에는 없습니다.Java SE 5에 javax.annotation.Generated를 추가하려면 어떻게합니까?

고객에게 보낼 때 javax.annotation.Generated을 포함시키는 가장 좋은 방법은 무엇이든지 Java SE 5와 Java SE 6에서 아무런 문제없이 실행할 수 있습니까? 여분의 jar 파일을 포함시켜야합니까? 그렇다면 어느 것이 @Generated에 살고 있습니까?

답변

11

은 Maven 중앙 저장소 (this location)의 해당 패키지에있는 다양한 클래스와 함께 사용할 수 있습니다. JAR 파일을 다운로드하기 만하면 Maven을 사용할 필요가 없습니다.

답변 의뢰 : GrepCode.

+0

고마워요! GrepCode 팁 보너스 포인트. – rob

+3

@skaffman에게 감사드립니다. ** Gradle 빌드 **의 경우 종속성은 org.glassfish를 컴파일해야합니다 : javax.annotation : 10.0-b28''. – JJD

+2

또한'compile 'javax.annotation과 함께 사용 가능합니다. jsr250-api : 1.0'' – nicopico

4

javax.annotation.Generated javadoc에 따르면 javadoc의 보존은 소스이므로 주석이 클래스에 컴파일되지 않으며이 주석이 있거나없는 결과 클래스는 동일합니다. 컴파일 된 클래스를 배포하는 한 고객은이 주석이 포함 된 jar 파일을 필요로하지 않습니다.

+1

추가 정보를 보내 주셔서 감사합니다. 알고있는 것이 좋다. 나는이 질문에 언급하는 것을 게을리했지만, 우리는 또한이 고객에게 자료를 제공 할 것을 제안한다. – rob

1

주석 처리 만 할 수 있으며 소스 레벨에서만 유지됩니다.

+0

확실한 해결책은 코드를 한 번만 생성하면되고, 또 다시는 코드를 생성하지 않아도되지만, 향후 유지 보수 담당자가 코드를 다시 생성 한 후에 주석을 다시 작성해야한다는 것을 알게되는 두통이 걱정됩니다. – rob

+0

Eclipse를 사용하는 경우 예를 들어 sed를 사용하여 제거하거나 주석 처리하는 빌더를 추가 할 수 있습니다. 또는 빌드 스크립트가 똑같이 작동합니다. – MahdeTo

+0

사실,하지만 jarfile을 추가하는 것보다 더 많은 노력이 필요합니다. 그래도 "바깥 세상의"해결책을 가져 주셔서 감사합니다. :) – rob

관련 문제