gpt4 book ai didi

java - 如何访问 Maven 项目中的 XML 文件以使其在打包时保持可用

转载 作者:搜寻专家 更新时间:2023-10-31 19:50:47 24 4
gpt4 key购买 nike

我目前开始研究一个 Maven 网络应用程序项目,该项目需要使用 jetty:run-exploded 目标启动,以便在 eclipse 中进行开发/调试。

现在,我有一个 XML 文件,其中的内容需要在运行时访问。我的问题是:将文件放在哪里,以便读取的代码在“分解”和打包(即 WAR)模式下都能工作?

将文件放在 src/main/java 中(以便在类路径中)不会削减它,因为 maven 在打包时过滤掉所有非 java 文件。当文件位于 src/main/resources 中时,一种方法是找出项目的根路径(在 eclipse 开发期间)并查看该目录——但是当项目被打包时,情况就不再是这样了.

当然,我可以编写尝试从两个位置读取文件的代码,但这看起来相当麻烦。有什么建议吗?

最佳答案

src/main/resources 中的文件被复制到 target/classes 目录,并在类路径中可用。只需从类路径中读取它们。如 How do I add resources to my JAR? 中所述来自 Maven 文档(此处有测试资源):

In a unit test you could use a simple snippet of code like the following to access the resource required for testing:

...

// Retrieve resource
InputStream is = getClass().getResourceAsStream("/test.properties" );

// Do something with the resource

...

关于java - 如何访问 Maven 项目中的 XML 文件以使其在打包时保持可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2643091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com