为什么eclipse项目的源目录中的xml文件没有复制到target / classes目录?

时间:2012-09-16 05:44:24

标签: xml eclipse maven buildpath eclipse-project-file

此问题与MyBatis 3.0.5 and mappers loading problemHow to suppress Maven "Unable to find resource" messages?

不同

我在org.org.wpse.db.config.db.config包中有xml文件,但为什么我在target / classes / org / wpse / db / config /目录中找不到这些xml文件,即使我运行mvn编译。

当我使用mybatis时,此错误会导致以下错误:

Could not find resource

导致此错误的问题是.xml文件未复制到构建目录,即使我使用mvn明确编译

1 个答案:

答案 0 :(得分:8)

Maven默认在src/main/resources目录中查找资源文件,即* .xml,* .properties等。建议将资源文件放在此处。

但是,没有什么能阻止您将资源文件放在其他地方,例如,src/main/java/org/wpse/db/config/,因为有些人更喜欢将资源文件与类文件一起放在特殊包中,您只需要在pom中进行一些配置。 XML:

<build>
  <resources>
    <resource>
      <!-- This include everything else under src/main/java directory -->
      <directory>${basedir}/src/main/java</directory>
      <excludes>
        <exclude>**/*.java</exclude>
      </excludes>
    </resource>
  </resources>

  ... ...
</build>

相关问题: how to customize maven to generate the .classpath that i want?

默认配置,运行mvn eclipse:eclipse时会生成以下.classpath文件:

<classpath>
  <classpathentry kind="src" path="src/main/java" including="**/*.java"/>
  ... ...
</classpath>
... ...

导入Eclipse时,它会为您提供以下类路径(您不想要的):

enter image description here

使用上面的pom配置,当运行'mvn eclipse:eclipse'时,它会生成以下.classpath文件:

<classpath>
  <classpathentry kind="src" path="src/main/java"/>
  ... ...
</classpath>
... ...

导入Eclipse时,它会为您提供以下类路径(您想要的):

enter image description here