2017-11-23 8 views
0

XSDファイルからJavaクラスを生成すると、こんにちは、次の問題があります。これはPMML xsdファイルから取得され、 "Con"という名前の要素が配置されています。これらの2つは、この要素が使用される唯一の場所です。この最小の可能な例でも、それは動作しません。名前が "Con"の要素をXJCで生成できません

<xs:element name="Neuron"> 
    <xs:complexType> 
    <xs:sequence> 
     <xs:element maxOccurs="unbounded" ref="Con"/> 
    </xs:sequence> 
    </xs:complexType> 
</xs:element> 
<xs:element name="Con"> 
    <xs:complexType> 
    <xs:attribute name="from" type="xs:double" use="required"/> 
    </xs:complexType> 
</xs:element> 

私はそこに名前「コン」とクラスを生成しようとすると、私はエラーを以下の取得:

unable to write files: C:\myPathHere\build\generated\jaxbCache\PMML-4-3\org\dmg\pmml_4_3\Con.java (The handle is invalid) 

興味深いことに、私は何か他のものに要素の名前を変更する場合には問題なく働いていますすべてのクラスが正しく生成されます。ここに行方不明のものがありますか?悲しいことに、JAXBのJavaクラス生成のためにXSD内の有効な要素名から "Con"という名前が除外されていることが見つかりませんでした。

ありがとうございます。

+1

をカスタマイズするClass Binding Declarationsを参照してください

@XmlElement(name="Con")アノテーションを使用し、バインディングをカスタマイズしている、このような「詐欺」などの特定のファイル名は、特別な持っています意味。多分それはここで問題です。 Microsoftからのこのブログの投稿を参照してください:[NULとCONのような予約されたファイル名はどうですか?](https://blogs.msdn.microsoft.com/oldnewthing/20031022-00/?p=42073) – Jesper

+0

ありがとうございました。 Windowsで予約されたファイル名。 –

答えて

1

Conは、ウィンドウの予約語です。ウィンドウにCon.txt自体を作成することはできません。あなたが行うことができますが、別のファイル名を与えるとWindows(およびMS-DOS)でクラス名

+0

ありがとうございましたWindowsで予約されたファイル名について知りませんでした。 –

関連する問題