簡體   English   中英

jaxb xsd前綴軟件包名稱

[英]jaxb xsd prefix package names

我有一個很大的xsd文件(帶有導入文件),該文件只能在xjc編譯器根據每個xsd文件中指定的目標屬性選擇包名稱時生成。 如果指定了特定的程序包名稱,則它將嘗試將所有生成的內容放入該程序包中,並且會發生大量名稱沖突。

問題出在包名稱上。 我想為這些軟件包名稱添加前綴。 理想情況下,我希望com.othercompany.spec._2.Error改為com.mycompany.productx.data.spec.Error。 但是我可以忍受com.mycompany.productx.data.com.othercompany.spec._2.Error

后者僅需要“ com.mycompany.productx.data”。 前綴為所有生成的軟件包名稱。

這有可能嗎?

或者,我可以獲取xjc生成的輸出,並讓Eclipse將java文件移至另一個包中,但這是一個手動步驟,我希望有一個自動構建過程來處理它,以便在其他人不得不重新生成它時6幾個月后,他們不必考慮這一點。

要獲得每個XML模式的不同包名,可以利用XJC中的情節文件擴展名從XML模式中分別生成類。

從a.xsd生成Java類以打包com.example.a

xjc -d out -p com.example.a -episode a.episode a.xsd

從b.xsd(導入a.xsd)生成Java類以打包com.example.b

xjc -d out -p com.example.b b.xsd -extension -b a.episode

欲獲得更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM