gpt4 book ai didi

java - 如何从 Java 获取 src/main/resources 路径

转载 作者:行者123 更新时间:2023-11-30 11:28:54 24 4
gpt4 key购买 nike

我在 src/main/resources 路径下有一些东西。具体来说,我有一个文件夹,其中包含名为 reports 的报告模板。

我了解当应用程序部署/运行时,src/main/resources 下的所有文件和文件夹都转到类路径,即我项目的 WEB-INF/classes .

这意味着将在我的服务器中创建一个文件夹 WEB-INF/classes/reports

现在我想访问我的报告作为路径,而不是作为输入流,因为我在 java 中的报告代码支持文件路径而不是输入流。所以我必须能够得到 WEB-INF/classes/reports 绝对路径(或相对,我不在乎,只要它是正确的)。

阅读一些关于类似问题的答案,我已经尝试过以下事情:

  1. getClass().getResource(".").getPath(); --> 这会返回我当前所在的类在我的类路径中的确切路径,即:C:\Tools\JBoss 应用服务器 7.1.1\standalone\deployments\myProject.war\WEB-INF\classes\aaa\bbb\ccc\ddd

  2. getClass().getClassLoader().getResource(".").getPath(); --> 返回:C:\Tools\JBoss Application Server 7.1 .1\modules\sun\jdk\main\service-loader-resources,这是完全不相关的。

我想要一些东西返回 C:\Tools\JBoss Application Server 7.1.1\standalone\deployments\myProject.war\WEB-INF\classes

如果不可能,我将获取第一个路径并根据需要返回尽可能多的文件夹以到达 classes 文件夹。

谢谢。

最佳答案

你需要ServletContext.getRealPath(String)方法。

getServletContext().getRealPath("/WEB-INF")

关于java - 如何从 Java 获取 src/main/resources 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18718971/

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