0

在maven项目中,所有属性文件,xml文件都必须在资源文件夹中。意味着如果我想要我的属性文件,src/main/java/com/search/search.properties 那么我需要将它放入resources/com/search/search.properties。有必要吗?

因为现在它们位于 java 文件夹中,所以当我在托管模式下运行 maven 项目时,它运行正常。但是当我创建战争时,它不包含该属性文件war/web-inf/classes/com/search/search.properties

当我把它放进去resources/com/search/search.properties然后只有它包含在war文件夹中。

4

2 回答 2

1

根据Maven 标准目录布局,您必须将 Application/Library 相关资源放入src/main/resources,如果您不这样做,当 maven 想要打包您的应用程序(War、Jar 或...)时,只需将资源复制src/main/resources到您的包中。

于 2013-01-17T07:38:12.523 回答
0

这真的取决于你如何管理事情。默认情况下,如果你使用 src/main/resources,maven 会小心。

还只需验证您在构建下的资源标签中是否有正确的包含/排除标签。

<build>
        <outputDirectory>${project.build.directory}/${project.artifactId}/WEB-INF/classes</outputDirectory>
        <finalName>${project.artifactId}</finalName>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources/</directory>
                <includes>
                    <include>**/*.xml</include>
                    <include>**/*.properties</include>
                </includes>
            </resource>
        </resources>
<build>
于 2013-01-17T08:59:59.613 回答