使用选项“-Xinject-code -extension”使用XJC + xsd + jxb插入代码

我试图使用xjc的扩展名“-Xinject-code”来为我生成的类添加一些代码。 对于以下简单的xsd架构……

                  

..我已经关联了以下绑定:

      @Override public String toString() { return this.getName();}     

运行xjc会产生以下输出:

 $ xjc -target 2.1 -verbose -Xinject-code -extension -d . -p generated -b test.jxb test.xsd parsing a schema... compiling a schema... [INFO] generating code unknown location generated/MyItem.java generated/MyList.java generated/ObjectFactory.java 

但是’generated / MyItem.java’文件不包含新方法“toString”。 我该怎么解决这个问题? 什么是“未知位置”的消息?

注意:

 $ xjc -version xjc 2.2.4 

编辑:

将xsd:element更改为xsd:complexType可以完成这项工作:

                 

      @Override public String toString() { return this.getName();}     

我现在可以看到文件“generated / MyItemType.java”中的代码

 $ tail generated/MyItemType.java @Override public String toString() { return this.getName();} } 

但是如何在不更改xsd文件的情况下告诉xjc生成代码?

请尝试/xs:schema/xs:element[@name='MyItem']/xs:complexType