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 分钟前
别把 ThreadLocal 写进 Serializer:一次 SaaS 多租户 Jackson 上下文污染排查
java·spring boot
国际云,接待9 分钟前
df 显示磁盘还有空间却无法写文件:Linux inode 耗尽排查与治理
linux·运维·服务器
许彰午11 分钟前
06-EaEngine调度器
java·低代码·架构
巨大八爪鱼40 分钟前
XP系统运行IoTDB 2.0.10数据库服务器
数据库·iotdb·xp
一路向北finish42 分钟前
《CentOS 7 搭建 Hadoop 3.3.6 分布式集群:NFS 共享方案完整实操》
linux·运维·hadoop·分布式·centos
卓怡学长42 分钟前
w181springboot机场乘客服务系统
java·数据库·spring boot·spring·intellij-idea
阮胜昌1 小时前
MySQL 9.7.0 LTS 现已发布:扩展了社区功能,并为企业级应用增加了动态数据脱敏功能
数据库·mysql
raindayinrain1 小时前
深入理解Linux内核--缺页异常,写时复制
linux·写时复制·缺页异常
晓子文集1 小时前
Tushare接口文档:每日涨跌停价格(stk_limit)
大数据·数据库·金融数据·量化投资