如何使用系统属性替换 Typesafe 配置文件中的占位符?

2024-01-03

我需要参考java.io.tmpdir在我的 application.conf 文件中

我打印了我的配置内容

val c = ConfigFactory.load()
System.err.println(c.root().render())

它使它像

# dev/application.conf: 1
"myapp" : {
    # dev/application.conf: 47
    "db" : {
        # dev/application.conf: 49
        "driver" : "org.h2.Driver",
        # dev/application.conf: 48
        "url" : "jdbc:h2:file:${java.io.tmpdir}/db;DB_CLOSE_DELAY=-1"
    }
 ...
 }
# system properties
"java" : {
    # system properties
    "io" : {
        # system properties
        "tmpdir" : "/tmp"
    },
....

所以我猜前向引用不起作用。有什么方法可以让我的选项在系统属性之后加载,以便配置解析器能够正确替换值?


转发引用工作正常;我相信问题在于你有${}语法在引号内,因此没有特殊含义。试试这样:

url = "jdbc:h2:file:"${java.io.tmpdir}"/db;DB_CLOSE_DELAY=-1"

(请注意,${}东西没有被引用)

在 HOCON 格式中,任何有效的 JSON 都将被解释为 JSON,因此,除了 JSON 支持的转义序列之外,带引号的字符串内部没有特殊语法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用系统属性替换 Typesafe 配置文件中的占位符? 的相关文章

  • 理解 Scala FP 库

    只是为了让那些想要开始使用 Scala FP 库 在纯 FP 方面变得更好的人快速清晰地了解 有人能澄清猫和猫效应 猫效应 IO 之间的区别 关系吗 最重要的是 齐奥和莫尼克斯对此有何看法 最后 与 ScalaZ 7 8 有何关系 到目前为
  • Scala中有类似Java Stream的“peek”操作吗?

    在Java中你可以调用peek x gt println x 在 Stream 上 它将对每个元素执行操作并返回原始流 这与 foreach 不同 foreach 是 Unit Scala 中是否有类似的东西 最好是适用于所有 Monady
  • 在 Scala 中将元素追加到列表末尾

    我无法添加 type 元素T到一个列表中List T 我尝试过myList myElement但它似乎创建了一个奇怪的对象并访问myList last始终返回放入列表中的第一个元素 我怎么解决这个问题 List 1 2 3 4 Result
  • 解决“Show”类型类实例的隐式问题

    我正在努力使Gender实施Show类型类 scala gt trait Gender extends Show Gender defined trait Gender scala gt case object Male extends G
  • 应对失败的“未来”

    给出以下两种方法 def f Future Int Future 10 def g Future Int Future 5 我想把它们写成 scala gt import scala concurrent Future import sca
  • 如何在 sbt 控制台中加载 scala 文件? [复制]

    这个问题在这里已经有答案了 可能的重复 将 Scala 文件加载到解释器中以使用函数 https stackoverflow com questions 7383436 load scala file into interpreter to
  • Spark scala 模拟 Spark.implicits 用于单元测试

    当尝试使用 Spark 和 Scala 简化单元测试时 我使用 scala test 和mockito scala 以及mockito Sugar 这只是让你做这样的事情 val sparkSessionMock mock SparkSes
  • Kafka 分区键无法正常工作

    我正在努力解决如何正确使用分区键机制的问题 我的逻辑是设置分区号为3 然后创建三个分区键为 0 1 2 然后使用分区键创建三个KeyedMessage 例如 KeyedMessage 主题 0 消息 KeyedMessage 主题 1 消息
  • 使用 Shapeless 记录组合任意数量的状态更改函数

    我正在尝试移植combineReducers从 Redux 到 Scala 这个想法是每个函数控制它的一小部分状态并且combineReducers创建一个控制整个状态的函数 我无法找出应该像这样工作的函数所需的签名 sealed trai
  • Java 拥有闭包后 Scala 的优势 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 随着 Java 中添加了闭包 作为语言选择 Scala 相对于 Java 的优势是什么 有人可以详细说明一下有什么优点吗 除了闭包 J
  • scala 返回列表中的第一个 Some

    我有一个清单l List T1 目前我正在执行以下操作 myfun T1 gt Option T2 val x Option T2 l map myfun l flatten find gt true The myfun函数返回 None
  • Scala:类型参数中的问号

    我试图理解以下代码 来自 Scalaz 库 def kleisliIdApplicative R Applicative Kleisli Id R 我假设一种形式T P0 是一个带有参数的类型构造函数 但是我无法找到解释类型参数中问号用法的
  • 如何在不从 DataFrame 转换并访问它的情况下向数据集添加列?

    我知道使用以下方法将新列添加到 Spark 数据集的方法 withColumn and a UDF 它返回一个 DataFrame 我还知道 我们可以将生成的 DataFrame 转换为 DataSet 我的问题是 如果我们仍然遵循传统的
  • 使用 Akka 1.3 的 actor 时,我需要注意生产者-消费者速率匹配吗?

    使用 Akka 1 3 时 我是否需要担心当生成消息的 Actor 生成消息的速度比使用消息的 Actor 的处理速度快时会发生什么 如果没有任何机制 在长时间运行的进程中 队列大小将增大以消耗所有可用内存 The doc http doc
  • Spark:查找前 n 个值的高性能方法

    我有一个很大的数据集 我想找到具有 n 个最高值的行 id count id1 10 id2 15 id3 5 我能想到的唯一方法是使用row number没有分区就像 val window Window orderBy desc coun
  • 如何使用 Scala 从 Spark 更新 ORC Hive 表

    我想更新 orc 格式的 hive 表 我可以从 ambari hive 视图进行更新 但无法从 sacla spark shell 运行相同的更新语句 objHiveContext sql select from table name 能
  • InvalidRequestException(为什么:empid 如果包含 Equal,则不能被多个关系限制)

    这是关于我从 Apache Spark 查询 Cassandra 时遇到的问题 Spark 的正常查询工作正常 没有任何问题 但是当我使用关键条件进行查询时 出现以下错误 最初 我尝试查询复合键列族 它也给出了与下面相同的问题 由以下原因引
  • Python 相当于 Scala 案例类

    Python 中是否有与 Scala 的 Case Class 等效的东西 就像自动生成分配给字段而无需编写样板的构造函数一样 当前执行此操作的现代方法 从 Python 3 7 开始 是使用数据类 https www python org
  • 在 Scala 中提取案例类字段名称

    我有一个案例类 case class A field1 String field2 Int 我想在某些代码中引用确切的字符串 field1 例如 val q Query field1 gt hello performQuery q 现在我必
  • 在 Scala 中扩展函数1

    在几个例子中 我看到一个对象或一个类扩展Function1 E g object Cash extends CashProduct gt String in Scala 的隐藏功能 https stackoverflow com quest

随机推荐

  • 如何在 github 存储库的子文件夹中搜索特定单词或条目

    我只是在寻找一个关于搜索单词的示例 在 github 的高级搜索中触发的正确命令 文件夹内特定存储库的 我想这将涉及 path 选项 但不确定如何使用它 作为示例 我需要在 jquery 测试套件中的以下位置搜索函数名称 clean 或 c
  • 使用 NSURLConnection 通过自签名证书连接到 https 时出现 kSecTrustResultRecoverableTrustFailure

    我在这里看到了一些问题 但没有一个对我有帮助 人们解决的问题主要是重新生成服务器证书 kSecTrustResult RecoverableTrustFailure 的原因是什么 https stackoverflow com questi
  • fp.readlines() 是否关闭文件?

    在 python 中 当我稍后在程序中尝试访问 fp 时 我看到 fp readlines 正在关闭文件的证据 您能否确认此行为 如果我还想再次读取该文件 是否需要稍后重新打开该文件 文件关闭了吗 https stackoverflow c
  • Material UI v4 AppBar 不会更改主题

    我有 Appbar 在 MUI v4 中
  • 匹配任何数字的正则表达式模式包括 1-9 除 2

    我需要一个正则表达式模式来匹配任何数字 包括 1 9 数字 除了 2 我的尝试 1 9 2 但这对我不起作用 另一种方法 D2 这意味着 不是非数字或 2
  • TypeORM 创建表后插入基本主数据(类型、状态等)

    我有问题想问你 我正在使用 NestJS 和 typeORM 我试图在创建表后将默认值插入到表中 例如 我有一个优先级表 我需要插入高 中 低值 我尝试了 typeorm 和 NestJS 文档中的所有内容 并从这里阅读了相关问题和答案 我
  • 如何使用 testng.xml 从大型 TestNG 套件执行一项测试?

    我有一个包含大量方法的 TestNG 套件 我使用构建在 TestNG 运行器之上的包装器来执行该套件 除了一个之外 套件中的所有测试均失败 我应该在 testng xml 中编写什么来执行那个失败的测试 明显的解决方案是为所有方法分配唯一
  • svnserve VS mod_dav_svn

    我们计划在网络本身相当慢的环境中安装 Subversion 存储库 之前在那里使用的VCS是VSS 使用它简直就是一场噩梦 不仅仅是因为它的 特性 所以 我的问题是 Svnserve 和 apache 模块之间的选择 我知道由于无状态协议
  • ASP.NET MVC 是否已准备好用于业务应用程序(集成第 3 方控件/组件)?

    我的公司已经开发 并且仍在继续开发 一个大型 ASP NET 业务应用程序 我们的平台是 ASP NET 2 0 使用一些 ASP NET Ajax 是广泛使用第三方组件 如网络网格 组合框 树视图 日历和日程安排控件等 现在 我对 ASP
  • 使用linq生成直接更新而不需要select

    大家好 我仍在学习 LINQ 所以如果这很幼稚 请原谅我 当您直接处理 SQL 时 您可以生成带有条件的更新命令 而无需运行 select 语句 当我使用 linq 时 我似乎遵循以下模式 选择实体 修改实体 提交更改 我想做的是使用 li
  • 为什么允许从一个构造函数调用另一个构造函数?

    我正在查看有关 SO 的其他问题 但我没有真正看到我的问题的解释 我读到从另一个构造函数调用构造函数 使用 this 关键字 是valid 但我不明白why这是有效的 以前 我认为每个对象只能有一个构造函数 构造函数链接似乎打破了这一逻辑
  • PostgreSQL 删除触发器

    我正在 PGAdminIII 上创建一个触发器 我想在其中删除另一个表上具有外键的行 但是我遇到了语法错误 并且找不到问题所在 CREATE TRIGGER clienteDelete BEFORE DELETE ON cliente FO
  • OCR应用前的图像清理

    过去几个小时我一直在尝试 PyTesser 它是一个非常好的工具 关于 PyTesser 的准确性 我注意到以下几点 包含图标 图像和文本的文件 准确度 5 10 仅包含文本的文件 已删除图像和图标 准确率 50 60 拉伸文件 这是最好的
  • 打印带有演示者备注的 xaringan 幻灯片

    是否可以打印带有演示者备注的 Xaringan 幻灯片 我知道我可以使用这些方法打印幻灯片 https github com yihui xaringan wiki Export Slides to PDF https github com
  • 如何将 Leiningen 模板部署到 Clojars?

    我在本地计算机上创建了一个 Leiningen 项目 然后通过执行以下操作将其转换为模板 lein create template webdb 然后我安装模板 cd webdb lein install 这允许我在本地基于模板创建项目 le
  • 缺乏后视的解决方法?

    回答另一位用户的问题 https stackoverflow com q 28044217 3725745我将下面的正则表达式组合在一起来匹配字符串中的数字 b 0 9 0 9 b 在提供答案后 我注意到 如果由于 b 与句点字符匹配而导致
  • GSON 2.0+ 从两个不同的序列化字段名称之一反序列化字段

    在我的 Java 类中 我有一个声明如下的字段 protected double a 0 0 在反序列化以重构此类的 JSON 中 该字段可以显示为两个不同名称之一 遗留问题 例如 JSON 字段可能如下所示 a 9 57 或者像这样 d
  • 获取指向字节数组的指针的不安全方法

    此行为在 C 中有效吗 public class MyClass private byte data public MyClass this data new byte 1024 public unsafe byte getData byt
  • Scrapy 和 Python。名称错误

    我正在尝试计算当前的货币汇率 请您看一下是否发现错误 items py import scrapy class CurrItem scrapy Item country scrapy Field currency scrapy Field
  • 如何使用系统属性替换 Typesafe 配置文件中的占位符?

    我需要参考java io tmpdir在我的 application conf 文件中 我打印了我的配置内容 val c ConfigFactory load System err println c root render 它使它像 de