情況是這樣的,
一開始我在開發的時候,建了一個 T1 entity, 裡面有一個 a field
然後開發到一半的時候發現,我必須要把它當成一個父類,
於是 我又多了一個 T2 extends T1, 然後 T1 的 a 就拿掉了,
改寫到 T2 裡頭也叫 a,然後問題就來了,
起server在建table的時候,T2這張table的create語法裡頭就塞了兩個a column name,
然後就報Duplicate column name 'a'...
或者是原本T1有個b column不可為null,調整結構之後拿掉該column,
但它在建T2的時候又又自動幫我加入這個column,
但我實際操作entity insert的時候就根本沒有這個column,
然後又報說該欄位不可以為null...
更神的是有一些不用的entity,我都已經刪掉了,
結果每次啟動依然會幫我建table出來...
這問題之前遇過,但很鳥的都先把新改的entity或field name先偷改掉
過一陣子再改回來之前的name,就又正常的...
但今天又遇到,覺得不能這樣忽視這個問題...
所以估狗之後,對於 persistence.xml 的設定也沒有奇怪的地方
因為查到的都是對於query的cache機制,
eclipselink 似乎也沒有會造成這種情況的設定,
然後我試過各種重開機,eclipse、db server、新的workspace、由SVN拉全新的專案...
都依然會跑出舊的那些entity設定...
或許小弟愚鈍,但辜狗一整個下午,
實在找不到解答...
想請問板上有沒有人知道原因,或者有相關的key word提供方向給我尋找解答,
感謝了<(_ _)>