我读到Meta-inf应放在src / main / resources下。当我在Eclipse中创建一个动态Web项目时,我似乎将Meta-Inf放在webapp文件夹下,与Web-Inf一起。
Meta-Inf的正确位置在哪里?它必须在课程路径上吗?我需要配置一个persistence.xml文件,不确定这是否有任何区别。
答案 0 :(得分:0)
"我读到Meta-inf应放在src / main / resources"
下
不一定。但你是对的,它应该在类路径上。使用src / main / resources,其中的所有内容(使用maven)都放在类路径上,而不需要资源/。请记住,动态Web项目类型不是Maven类型的项目(尽管如果需要可以轻松实现)。
"当我在Eclipse中创建动态Web项目时,我似乎将Meta-Inf放在webapp文件夹下,与Web-Inf一起。"
是的,就像Manifest一样,就像任何其他jar一样。不是类路径的META-INF
"我需要配置一个persistence.xml文件"
您可以手动创建META_INF并将其放在src中(除非您将其转换为maven项目,否则无主/资源)。但是,将JPA配置到动态Web项目中的最简单方法是:
见the javaee tutorial on persistence。它声明:
如果将持久性单元打包为WAR文件中的一组类,则persistence.xml应位于WAR文件的WEB-INF / classes / META-INF目录中。
如果您打开导航器视图(Windows - > show view - > navigator),您将看到带有类/ META-INF / persistence.xml的构建目录