有没有一种方法可以配置 JAXB 插件为布尔值 getter 方法附加 "get" 而不是 "is"
Is there a way to configure JAXB plugin to append "get" for boolean getter method instead of "is"
我在我的项目中使用了下面提到的 JAXB
插件
<groupId>com.sun.tools.xjc.maven2</groupId>
<artifactId>maven-jaxb-plugin</artifactId>
<version>1.1.1</version>
为布尔元素附加 "get"。但是在迁移到新插件时
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
我得到 "is" 到 boolean
类型元素的 getter 方法。但是代码需要旧签名。例如
假设,我们有以下 boolean
.
类型的元素
a) 文件已创建。
新插件已在“已生成”下生成以下方法签名column.I已在“预期”列下列出预期方法。
Generated Expected
boolean isFileCreated() boolean getFileCreated()
有些代码不是由我们团队维护的,因此更改调用代码不在我们手中。请建议是否有配置此插件的方法,以便它为 boolean
生成 getter,正如我们期望的那样。
提前致谢。
这里是JAXB插件里面的配置pom.xml
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
<executions>
<execution>
<id>kyc</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<!-- Added for generating getter for boolean element in XSDs with prefix "get" starts-->
<enableIntrospection>true</enableIntrospection>
<!-- Added for generating getter for boolean element in XSDs with prefix "get" ends-->
<generatePackage>XXX.XXX.APackage</generatePackage>
<schemaDirectory>src/main/resources/XXX/</schemaDirectory>
<generateDirectory>${project.build.directory}/generated-sources/XXX/generateDirectory>
<verbose>true</verbose>
</configuration>
</execution>
</executions>
</plugin>
进行此更改后,我仍然得到 "is" 附加的 属性 布尔类型名称。
您可以在 maven 插件中使用 enableIntrospection
选项。 See Here
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
<executions>
<execution>
<id>xjc1</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<args>
<arg>-Xannotate</arg>
<arg>-nv</arg>
<arg>-Xnamespace-prefix</arg>
</args>
<extension>true</extension>
<schemas>
<schema>
<fileset>
<directory>${basedir}/src/main/resources/schema</directory>
<includes>
<include>*.xsd</include>
</includes>
</fileset>
</schema>
</schemas>
<enableIntrospection>true</enableIntrospection>
<debug>true</debug>
<verbose>true</verbose>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.6.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics-annotate</artifactId>
<version>0.6.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-namespace-prefix</artifactId>
<version>1.1</version>
</plugin>
</plugins>
</configuration>
</execution>
</executions>
</plugin>
使用元素 <xs:element minOccurs="0" name="flag" type="xs:boolean" />
<enableIntrospection>false</enableIntrospection>
生成classpublic Boolean isFlag() {
改为
<enableIntrospection>true</enableIntrospection>
生成classpublic Boolean getFlag() {
我在我的项目中使用了下面提到的 JAXB
插件
<groupId>com.sun.tools.xjc.maven2</groupId>
<artifactId>maven-jaxb-plugin</artifactId>
<version>1.1.1</version>
为布尔元素附加 "get"。但是在迁移到新插件时
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
我得到 "is" 到 boolean
类型元素的 getter 方法。但是代码需要旧签名。例如
假设,我们有以下 boolean
.
a) 文件已创建。
新插件已在“已生成”下生成以下方法签名column.I已在“预期”列下列出预期方法。
Generated Expected
boolean isFileCreated() boolean getFileCreated()
有些代码不是由我们团队维护的,因此更改调用代码不在我们手中。请建议是否有配置此插件的方法,以便它为 boolean
生成 getter,正如我们期望的那样。
提前致谢。
这里是JAXB插件里面的配置pom.xml
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
<executions>
<execution>
<id>kyc</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<!-- Added for generating getter for boolean element in XSDs with prefix "get" starts-->
<enableIntrospection>true</enableIntrospection>
<!-- Added for generating getter for boolean element in XSDs with prefix "get" ends-->
<generatePackage>XXX.XXX.APackage</generatePackage>
<schemaDirectory>src/main/resources/XXX/</schemaDirectory>
<generateDirectory>${project.build.directory}/generated-sources/XXX/generateDirectory>
<verbose>true</verbose>
</configuration>
</execution>
</executions>
</plugin>
进行此更改后,我仍然得到 "is" 附加的 属性 布尔类型名称。
您可以在 maven 插件中使用 enableIntrospection
选项。 See Here
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.12.3</version>
<executions>
<execution>
<id>xjc1</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<args>
<arg>-Xannotate</arg>
<arg>-nv</arg>
<arg>-Xnamespace-prefix</arg>
</args>
<extension>true</extension>
<schemas>
<schema>
<fileset>
<directory>${basedir}/src/main/resources/schema</directory>
<includes>
<include>*.xsd</include>
</includes>
</fileset>
</schema>
</schemas>
<enableIntrospection>true</enableIntrospection>
<debug>true</debug>
<verbose>true</verbose>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.6.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics-annotate</artifactId>
<version>0.6.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-namespace-prefix</artifactId>
<version>1.1</version>
</plugin>
</plugins>
</configuration>
</execution>
</executions>
</plugin>
使用元素 <xs:element minOccurs="0" name="flag" type="xs:boolean" />
<enableIntrospection>false</enableIntrospection>
生成classpublic Boolean isFlag() {
改为
<enableIntrospection>true</enableIntrospection>
生成classpublic Boolean getFlag() {