- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我有一个非常简单的 WAR 项目,我想在所有已编译 Java 类所在的类输出文件夹的顶部包含一个名为 META-INF
的目录。我正在使用 Maven,但似乎默认情况下 Maven 不会包含任何不是 Java 类的东西。所以它忽略了我位于 src
目录顶部的 META-INF
目录。META-INF
目录包含一个名为 persistence.xml
的文件。关于如何指示 Maven 将此目录和文件放入输出文件夹的任何快速指针?
最佳答案
一般来说,对于基于 Java 的 Maven 项目,非源文件应该放在项目的 src/main/resources
子目录中。 resources
目录的内容在构建的 process-resources 阶段复制到输出目录(默认情况下,target/classes
) .
对于 Maven WAR 项目,稍微复杂一些:还有 src/main/webapp
目录,Maven 期望在其中找到 WEB-INF/web.xml
。要构建您的 WAR 文件,该文件必须存在;否则,您将看到如下错误消息:
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode)
由于 WEB-INF
目录必须存在于 src/main/webapp
下,我建议避免在 src/main/resources< 中再次定义它
。尽管这是完全有效的,并且两个目录的内容将被合并,但如果在两个目录中都定义了一个文件,它可能会让人感到困惑。 src/main/resources
的内容将优先,因为它们是在 src/main/webapp
的内容之上复制的。
关于java - Maven : Including a META-INF folder in the classes folder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1297473/
我是一名优秀的程序员,十分优秀!