2013-06-24 68 views
2

我有一個很好的運行項目,使用Maven進行依賴管理。該項目本身是由eclipse運行的(Run As...)。 在project menu > Deployment Assembly中,我包含了MAVEN_REPO爲什麼eclipse不能導出包含在classpath中的maven庫?

問題:當我運行該項目時,所有東西都被正確複製到war/WEB-INF/lib。 但我不斷得到一個錯誤,PersistenceProvider無法找到。

如果我手動將所有庫從部署的戰爭目錄複製到src/main/webapp/WEB-INF/lib,然後重新啓動應用程序,everthing正常工作!

所以我可以得出結論,我的jpa /休眠配置一般都很好。

但我怎麼能過來需要手動添加所有庫到src lib文件夾?

+0

有關於在Maven中使用GPE的常見問題:https://developers.google.com/eclipse/docs/faq#gwt_with_maven –

回答

3

所以,當你做'運行 - Web應用程序'Eclipse /谷歌插件使用您指定的戰爭目錄路徑。要改變它,你右鍵點擊你的項目,然後選擇屬性。然後在谷歌下拉菜單中選擇'Web Applicaiton'。在那裏,你可以編輯'WAR目錄'路徑。這可能是設置爲src/main/webapp,這不是你想要的。

當maven構建你的戰爭時,它將獲取所有構建的類文件和庫,並將它們打包到目標目錄中。這是你想用作'戰爭目錄'的目錄。這將是'/target/myappname-1.0.0'

旁註:如果您使用的是gwt/maven,您可能需要使用命令'mvn gwt:run'與使用google/eclipse插件。這允許maven在運行dev服務器之前完成一些工作(如解析依賴關係)。

+0

編輯爲我的第一個答案被視爲別的東西。 – aglassman

+0

你是絕對正確的人!該文件夾確實仍然是'src/main/webapp /'。根據您的建議修改所有依賴性問題。保存了我的一週! – membersound

+1

很高興它的工作,快樂的編碼! – aglassman

相關問題