如何解决获取Spring Boot jar中的资源文件夹的路径
我正在尝试将Java应用程序项目转换为Spring Boot,并尝试通过使用以下cmd在gcp中部署此Spring Boot项目jar
gcloud app deploy <projectname>.jar
在我的应用程序内部,我正在使用需要2个属性文件的apache核心依赖项之一,并将其放置在项目目录下
--PROJECTNAME<root>
----/.idea
----/config/bin/config.properties
----/src
------/main
------/...
------/...
并且我只能为属性文件设置路径,其余的事情将由apache依赖类文件处理。如果这些属性在jar位置本身中可用,则在IDE和jar中都可以正常工作。
因此,当我使用以上cmd在gcp中部署此项目时,我可以看到此项目已复制到gcp应用引擎中的/ workspace /目录下。因此,要么我需要在gcp中的/ workspace /目录下复制此属性文件,要么需要访问jar中的属性文件,但是我只能传递path(String)。 在apache类文件中,下面的代码用于读取属性文件。
BufferedReader reader = Files.newBufferedReader((new File( <path which i can pass> + "/bin/config.properties")).toPath(),Charset.defaultCharset());
and
FileInputStream fis = new FileInputStream(<path which i can pass> + "/bin/config.properties");
解决方法
我想您可以将配置文件放入src / main / resources中,因为我看到您的配置位于src dir之外,因此在类中,您需要执行getClass().getClassLoader().getResource("config/bin/config.properties")
文件才能获取文件作为URL,并为其打开InputStream。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。