2013-02-20 59 views
13

我對此感到非常沮喪:Maven - >更新項目...究竟是什麼?

我正在使用一個maven項目,使用eclipselink的jdbc。 mvn install按預期工作。直到我必須更改persitence.xml中的PW。當我執行mvn clean和之後mvn install項目被破壞,並且錯誤的(舊)persitence.xml仍在使用中。在日食中,我必須做一個maven -> update project(使用m2e插件),並且mvn install再次突然工作。

現在我的問題:在部署服務器,我使用的命令行腳本,我發現沒有mvn XYZ相當於爲M2E功能...

有一些相同呢?

明確的情景:

我開發的Eclipse中導入的Maven項目我的地方maschine(OSX/WIN7)。我有一個JPA持久性接口,它封裝了通過eclipselink實現的數據庫連接。我可以在本地部署(mvn install),但在運行mvn clean並更改密碼persitence.xmlmvn install不再可能。我剛剛在測試中得到了classDefNotFound Persitor,因爲它靜態地初始化EntityManager,它不能連接新的persitence.xml的原因 - 或者至少是我的意見,因爲堆棧跟蹤沒有什麼幫助。但是,在項目中的日食中的maven -> update project...之後,mvn install再次工作並且新密碼被採用(測試運行!)。

當我想在遠程計算機上部署項目(debian,commandline)時,我無法安裝被拖拉的項目,原因是在更改了部署的persitence.xml中的密碼之後,它再次出現錯誤的persitence.xml或者至少使用一些緩存。 我希望能讓它更清楚一點。

解決方案: 確保persitence.xml放置在src/main/resources/META-INF中,而不是其他地方。 m2e從錯誤的地方捕獲persitence.xml(在我的情況下,src/main/java/META-INF)。所以這基本上只是一個錯誤的項目結構。

+0

這應該是有幫助的:http://stackoverflow.com/questions/10564684/how-to-fix-error-updating-maven-project-unsupported-iclasspathentry-kind-4?answertab=oldest#tab-top – PCM 2013-02-20 23:51:39

回答

3

看起來你可以使用mvn eclipse:clean eclipse:eclipseregenerate the eclipse project files - 希望能讓你分類。從日食

+0

不幸的是它沒有成功。在mvn乾淨或新鮮的混帳後我不能安裝。 – ThommyH 2013-02-20 23:57:24

+0

你是什麼意思?你「無法安裝」,編輯你的問題與你得到的任何錯誤,我會很樂意看看。 – hd1 2013-02-20 23:59:18

+1

他明顯使用[m2e](http://eclipse.org/m2e/)用於eclipse的Maven集成。這不符合你提到的[Maven eclipse插件](http://maven.apache.org/plugins/maven-eclipse-plugin/eclipse-mojo.html)。我不會同時使用兩者。 – FrVaBe 2013-02-21 08:59:42

1

行家更新項目是不同的,因爲它會產生一個Maven依賴的類路徑容器

MVN日食:日食生成引用的庫容器。