gpt4 book ai didi

java - 无需启动 Eclipse 即可访问属性/环境变量?

转载 作者:太空宇宙 更新时间:2023-11-04 09:37:09 24 4
gpt4 key购买 nike

我想设置可以跨其他类文件使用的 log4j 配置文件路径/其他文件夹路径,而不需要对文件夹路径进行硬编码。

现在,我已将变量设置为环境变量。但只有启动 Eclipse 才能修改它。我如何设置此变量,以便任何人(不想启动 Eclipse)都可以从外部修改它。此外,它将用于测试配置。因此,最好不要对其进行硬编码,并让所有文件路径等易于重构。

final static String log4jpath = System.getenv("LOG4J_PATH");

最佳答案

解释comment :

[How to get value from] outside of the Java program such as a separate file, that contains all other filepaths?

这称为配置文件

它通常是一个属性文件,类似于 Log4j 配置文件,但它可以是任何类型的文件,例如XML、JSON、YAML,...

要识别单个此类文件,您可以使用:

  • 环境变量(就像你现在一样)
  • 系统属性(更常见)
  • 当前目录中特定命名的文件
  • ...

该文件中的条目将标识您真正想要的所有值。

例如,Spring 作为一个填充 Java 框架,将在许多地方查找配置。请参阅24. Externalized Configuration有关完整详细信息,但以下是最常见的摘要:

  • 命令行参数,例如java -jar MyApp.jar --foo=bar
  • Java 系统属性,例如在命令行上使用 -Dfoo=bar 设置
  • 操作系统环境变量,例如SET foo=bar (Windows) 或 export foo=bar (Linux)
  • 打包 jar 之外的应用程序属性,即相对于当前目录。
    可以在命令行上覆盖名称和位置。
    • config/application.properties
    • config/application.yaml
    • application.properties
    • application.yaml

关于java - 无需启动 Eclipse 即可访问属性/环境变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56367494/

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