4

此问题与MyBatis 3.0.5 和映射器加载问题以及如何抑制 Maven “无法找到资源”消息不同?

我在 org.org.wpse.db.config.db.config 包中有 xml 文件,但是为什么即使在我运行 mvn compile 之后我也无法在 target/classes/org/wpse/db/config/ 目录中找到这些 xml 文件。

当我使用 mybatis 时,这个错误会导致以下失败:

Could not find resource

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

4

1 回答 1

8

Maven 默认在目录中查找资源文件,即*.xml、*.properties 等src/main/resources。建议把你的资源文件放在这里。

但是,没有什么能阻止您将资源文件放在其他地方,例如,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>

相关问题: 如何自定义 maven 以生成我想要的 .classpath?

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

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

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

在此处输入图像描述

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

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

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

在此处输入图像描述

于 2012-09-16T11:57:04.937 回答