Gradle - 使用jaxb生成可序列化的类

时间:2015-03-19 03:22:05

标签: java serialization build gradle jaxb

我使用gradle作为构建工具并配置jaxb插件jacobono。在build.gradle文件中有以下条目:

jaxb {
  bindingsDir = "src/main/resources/xjb"
  xjc {
   xsdDir = "src/main/resources/xsd"
   generatePackage = "some.package"
  }
}
在xjb目录下,具有以下内容的binding.xml:

<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
        xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance"
        xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
        xsi:schemaLocation="
 http://java.sun.com/xml/ns/jaxb      
 http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
 version="2.1">
   <globalBindings>
     <serializable uid="1" />
   </globalBindings>
 </bindings>

虽然文件正在生成,但它们都没有实现我在绑定xml中定义的可序列化接口。我怀疑绑定目录配置。

任何建议都会有所帮助。

1 个答案:

答案 0 :(得分:0)

将绑定信息移动到xsds,它有效。

不确定插件是否能正常使用binging dir参数,因为即使使用绝对路径也无法正常工作。