最近在做myeclipse中hibernate反向工程的時(shí)候,生成的POJO都存放在項(xiàng)目的default包下了。
無(wú)論怎樣設(shè)置也無(wú)法使POJO放在指定包下。而在別的包中寫(xiě)的測(cè)試類不能將其引用,所以感到很困惑。
還以為是版本的問(wèn)題,改裝用6.0版本的,測(cè)試還是這樣的問(wèn)題。
或許這個(gè)myeclipse的一個(gè)bug吧。
于是自己就想:如果在eclipse下建立的Java項(xiàng)目,而定義在默認(rèn)包(default package)中的類,能不能在自定義包中的類引用它呢?如果能改怎么寫(xiě)呢?
-----------------------------------------------------------------------------------------------
自己在網(wǎng)絡(luò)上找資料相關(guān)的說(shuō)明很少,或許大家都遇到過(guò)這樣的問(wèn)題,只是沒(méi)有去研究或是沒(méi)時(shí)間去研究。
我的理解:
這是eclipse遺留問(wèn)題,或是以前設(shè)計(jì)問(wèn)題。如果打開(kāi)建立的項(xiàng)目,可以看到有熱src,在那下面就存放的是default package下的類。打開(kāi)類可以看到第一句并沒(méi)有package語(yǔ)句,也就是說(shuō)它并不屬于任何一個(gè)包。
如果大家不用eclipse而采用文本編輯器去編寫(xiě)Java源文件,一個(gè)類要引用不在一個(gè)文件夾下而又沒(méi)有使用package語(yǔ)句的另一個(gè)類是不能實(shí)現(xiàn)的。
在看看,eclipse建立的項(xiàng)目,不就是這樣的嗎?
結(jié)論:我認(rèn)為這是eclipse設(shè)計(jì)時(shí)的問(wèn)題。
ps:歡迎大家討論。謝謝