我有一个很好的运行项目,它使用Maven进行依赖关系管理。项目本身由eclipse(Run As...
)运行。
在project menu > Deployment Assembly
中,我添加了MAVEN_REPO
。
问题:当我运行项目时,所有内容都会被正确复制到war/WEB-INF/lib
。
但是我经常收到PersistenceProvider
无法找到的错误。
如果我将所有库从已部署的war dir手动复制到src/main/webapp/WEB-INF/lib
,然后重新启动应用程序,那么everthing工作正常!
所以我可以得出结论,我的jpa / hibernate配置一般都没问题。
但是,如何才能将所有库手动添加到src lib文件夹?
答案 0 :(得分:3)
因此,当您执行'Run As - Web Applicaiton'eclipse / google插件时,会使用您指定的War目录路径。要更改此设置,请右键单击项目,然后选择属性。然后在谷歌下拉菜单中选择“Web Applicaiton”。在那里,您可以编辑“WAR目录”路径。这可能设置为src / main / webapp,这不是你想要的。
当maven构建你的战争时,它会获取所有构建的类文件和库,并将它们打包到目标目录中。这是您要用作“战争目录”的目录。这将是'/target/myappname-1.0.0'
旁注:如果你正在使用gwt / maven,你可能会想要使用命令'mvn gwt:run'而不是使用google / eclipse插件运行。这允许maven在运行dev服务器之前做一些工作(比如解析依赖关系)。