2013-03-11 6 views
4

JAXB 용 Maven 플러그인을 사용하여 XML 스키마 문서에서 클래스를 생성하고 있습니다. 내 POM은이 JAXB가 스키마에 따라 클래스를 생성 할 때 내가 JPA 2의는 EclipseLink 사양을 사용하고JAXB Java EE는 스키마에서 엔터티 클래스를 생성합니다.

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>jaxb2-maven-plugin</artifactId> 
    <version>1.5</version> 
    <executions> 
<execution> 
    <goals> 
<goal>xjc</goal> 
</goals> 
<phase>generate-sources</phase> 
    </execution> 
    </executions> 
<configuration> 
<clearOutputDir>false</clearOutputDir> 
<outputDirectory>src/main/java</outputDirectory> 
<schemaDirectory>src/main/webapp/schemas</schemaDirectory> 
<includeSchema>**/*.xsd</includeSchema> 
<bindingDirectory>src/main/resources/bindings</bindingDirectory> 
<enableIntrospection>false</enableIntrospection> 
</configuration> 
</plugin> 

다음, 그것은 다음과 같은 주석을 포함하지 않습니다 포함되어 있습니다.

@Entity 
@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 

현재 Maven을 사용하여 클린 컴파일 할 때마다 수동으로 추가합니다. 어쨌든 클래스를 생성 할 때이 주석이 포함 된 클래스 파일에 주석을 달기 위해 JAXB 플러그인을 얻으려면 어쨌든 궁금합니다.

답변

1

JAXB에서 사용하는 XJC 컴파일러에는 생성 된 Java 코드를 사용자 정의 할 수있는 플러그인 api가 있습니다. plugin to add arbitrary annotations이있는 것 같습니다. 문제가 이미 해결되었을 수도 있습니다.

가능성의 더 복잡한 예를 보려면 fluent api pluginsource code을 살펴보십시오.

관련 문제