new File 得到的是父工程的src路径,而不是本微服务的路径。如何进行全局配置来解决这个问题

如果您希望在微服务中得到本微服务的路径,并进行全局配置来解决这个问题,可以考虑以下两种方法:

  1. 使用类加载器获取本微服务的路径:

    java 复制代码
    String basePath = YourClassName.class.getProtectionDomain().getCodeSource().getLocation().getPath();

    这种方法可以获取到当前类所在的路径,通常是微服务项目的根路径。您可以将此路径作为基准路径,然后通过拼接相对路径来获取其他文件或目录。

  2. 使用系统属性获取本微服务的路径:

    java 复制代码
    String basePath = System.getProperty("user.dir");

    这种方法可以获取到当前工作目录,通常是微服务项目的根路径。通过这种方法,您可以直接使用该路径来访问其他文件或目录。

对于全局配置,您可以将获取到的路径保存到配置文件中,例如 "application.properties",然后在需要使用路径的地方从配置文件中读取。如果是使用 Spring Boot,则可以使用 @Value 注解来注入配置文件的值。如果是非 Spring Boot 应用程序,则可以使用其他配置文件读取库来读取配置文件中的值。

这样,您就可以在整个微服务中使用统一的配置,来获取正确的微服务路径。同时,您也可以在部署时轻松更改配置文件中的路径,以适应不同的环境和部署要求。

相关推荐
一只积极向上的小咸鱼2 小时前
Codex 在 VS Code + ModelArts 场景下的登录与配置总结
linux·运维·windows
Waay6 小时前
Linux Shell 知识点考评(一):grep 文本搜索(附答案)
linux·运维·服务器
jamon_tan6 小时前
Linux下串口RAW模式设置
linux
woxihuan1234566 小时前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE
jvm·数据库·python
东风破1377 小时前
DM8达梦共享存储集群DSC搭建步骤
数据库·学习·dm达梦数据库
碧海银沙音频科技研究院7 小时前
基于VMware虚拟机ubuntu开发博通BK7258方法
linux·运维·ubuntu
雪碧聊技术7 小时前
当数据库字段数大于Java实体类属性数时,MyBatis还能映射成功吗?一文详解
数据库·自动映射·mybatis映射机制·java实体类·宽容映射机制
Jetev7 小时前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL
jvm·数据库·python
m0_702036537 小时前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写
jvm·数据库·python
庞轩px7 小时前
第七篇:Spring扩展点——如何优雅地介入Bean的创建流程
java·后端·spring·bean·aware·扩展点