`
towardsfuture
  • 浏览: 5268 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

maven项目src目录下的xml资源文件默认不编译至classes文件夹

阅读更多
如题,IDEA的maven项目中,默认源代码目录下的xml等资源文件并不会在编译的时候一块打包进classes文件夹,而是直接舍弃掉。

如果使用的是Eclipse,Eclipse的src目录下的xml等资源文件在编译的时候会自动打包进输出到classes文件夹。Hibernate和Spring有时会将配置文件放置在src目录下,编译后要一块打包进classes文件夹,所以存在着需要将xml等资源文件放置在源代码目录下的需求。

解决IDEA的这个问题有两种方式。

第一种是建立src/main/resources文件夹,将xml等资源文件放置到这个目录中。maven工具默认在编译的时候,会将resources文件夹中的资源文件一块打包进classes目录中。

第二种解决方式是配置maven的pom文件配置,在pom文件中找到<build>节点,添加下列代码:

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

其中<directory>src/main/java</directory>表明资源文件的路径,<include>**/*.xml</include>表明需要编译打包的文件类型是xml文件,如果有其它资源文件也需要打包,可以修改或添加通配符。
分享到:
评论

相关推荐

    Maven打包,指定classes路径

    默认情况下,Maven将编译后的Java类文件放置在`target/classes`目录下。对于Web应用,最终的WAR包会将这些类文件打包到`WEB-INF/classes`目录。然而,如果我们希望在打包过程中直接将类文件放入`WebContent/WEB-INF/...

    Maven项目中读取src/main/resources目录下的配置文件的方法

    这是因为src/main/resources目录下的文件在编译后会被copy到target/classes目录下。因此,我们需要使用`ClassLoader`来加载配置文件。例如: ```java Properties prop = new Properties(); prop.load(this.getClass...

    eclipse构建Maven项目.doc

    2. src/main/resources:存放配置文件、xml、properties文件等的文件夹,发布项目时该文件夹的文件也会复制到WEB-INF/class目录下。 3. src/main/webapp:Maven约定的WebRoot目录,发布项目时是发布到根目录/下的。 ...

    maven笔记:maven-overlay-实战笔记

    `pom.xml` 文件是 Maven 项目的核心,包含了项目的基本信息(如项目名、版本、作者)、构建配置(如源码目录、输出目录)、依赖管理(指定项目依赖的库及其版本)以及构建过程中的插件配置等。在 Maven overlay 的...

    maven编译bindead资源

    当执行`mvn compile`命令时,Maven会根据`pom.xml`的配置,将`src/main/bindead`目录下的所有资源复制到目标目录(默认为`target/classes`),以便于打包或运行。如果bindead资源是二进制文件,通常不需要进行过滤...

    [springmvc注解 + maven 完整项目]解决maven项目直接发布tomcat中 classes为空

    2. **未包含源代码**:Maven默认只打包编译后的`.class`文件,如果需要包含源代码,需要在`pom.xml`中添加`maven-source-plugin`插件。 3. **过滤器问题**:如果你使用了Maven的资源过滤功能,可能会导致某些文件...

    十分钟学会创建Maven项目及一键部署

    - 观察`target/classes`目录下应出现编译后的`.class`文件。 2. **清理项目**: 使用`mvn clean`命令可以清理项目,删除之前编译产生的文件,例如`target`目录下的文件。 - 再次查看`target`目录,确认是否已被...

    maven常用命令以及以个测试项目

    - `mvn package` 将编译后的代码和相关的资源文件打包成指定格式(如JAR、WAR),默认生成的文件会放在target目录下。 5. **安装到本地仓库**: - `mvn install` 会将打包后的文件安装到本地Maven仓库,供其他...

    Maven 的配置文件路径读取方法

    Maven 的资源目录结构是指 src/main/resources 目录下的所有文件都会被编译到 target/classes 目录下。因此,在读取配置文件时,需要使用正确的路径来读取配置文件。例如,如果配置文件放在 src/main/resources/...

    一个简单的maven web 项目

    JSP文件最终会被Maven或Tomcat等Web服务器转换成Servlet并编译到WEB-INF/classes目录下。 3. **META-INF**:这个目录用于存储元数据,如MANIFEST.MF文件,它可以包含关于项目的信息,比如作者、版本、主类等。在...

    如何用Maven编译java项目实例

    使用Maven编译Java项目,只需在命令行中输入`mvn compile`,Maven就会自动找到src/main/java目录下的源代码,进行编译,并将结果放在target/classes目录下。 5. **运行测试** Maven同样支持自动化测试,通过`mvn ...

    maven项目搭建部署

    通常需要添加的文件夹有src/main/java用于存放源代码,src/test/java用于存放测试代码,src/test/resources用于存放测试资源文件。这些文件夹必须被标记为Source Folder,以确保Eclipse正确识别。 4. 更改classpath...

    maven搭建ssm项目

    这个文件可能是项目打包后的结果,包含`WEB-INF`目录、`META-INF`目录以及`WEB-INF/classes`下的编译后Java类和资源文件,是可以在Web服务器上部署的应用程序。 总结,使用Maven搭建SSM项目是一个整合配置的过程,...

    Struts2 HelloWorld示例(Maven项目)

    5. **src/main/webapp/WEB-INF/classes**:编译后的Java类和资源文件会被部署到这里。 6. **src/main/webapp/WEB-INF/lib**:Maven会自动将项目依赖的JAR文件放入此目录,供Web应用使用。 在运行这个示例时,你...

    maven的优缺点 项目

    将maven的项目重新编译,在项目中右击,可以pom上右击,可以将pom(目录)下面的jar和war重新编译 如果出现以上情况,说明下载的jar包有问题,把这下面的文件删除,重新下载 每创建一个项目,都有pom.xml,所有的配置都...

    Maven2+Eclipse

    此外,`pom.xml`文件位于项目根目录下,用于描述项目配置。 对于Web项目,Maven会额外包含一个`src/main/webapp`目录,用于存放Web相关的HTML、CSS、JavaScript等静态资源以及JSP页面等动态资源,这有助于保持Web...

    Java web项目代码结构说明

    编译后的`.class`文件默认保存路径是`Contentdirectory`目录下的`WEB-INF/classes`。 #### 三、Maven项目的代码结构 **1. Maven项目结构:** - **新建Maven项目:** - Maven是一个项目管理和综合工具,可以自动化...

Global site tag (gtag.js) - Google Analytics