让 IntelliJ 了解属性文件

2024-01-22

有没有办法告诉 IntelliJ 某个特定的.properties文件将被加载到项目的环境中?我们用@PropertySource注释来加载属性文件,并在多个位置从由已配置的属性确定的文件加载覆盖值,如下所示:

@Configuration
@PropertySource("classpath:com/example/package/db.properties")
@PropertySource("classpath:com/example/package/db.${db.instance}.properties")
public class DatabaseConfig {
    private @Value("${db.someProperty}") String someDBProperty;
    // ...
}

问题是在这些间接引用的文件之一中,例如db.test.properties,IntelliJ 不知道属性文件是否/如何被引用,因此它无法将任何条目与其用法联系起来。 (奇怪的是,some这些文件中列出的属性不会灰显以指示“未使用的属性”,尽管即使这些属性也不会为“查找用法”搜索提供任何结果)。直接命名的文件没有问题,例如db.properties above.

除了创建额外的虚拟文件之外,是否有某种方法可以告诉 IntelliJ 这些文件@Configuration引用它们的文件?


我就是这样做的:

  • 在项目资源管理器中,我右键单击 src/main/resources,将鼠标悬停在“将目录标记为...”上,然后单击“资源根目录”
  • 在 Spring 配置中,我直接指定属性文件的名称。

这是我在我的一个项目中执行此操作时的一个示例:https://github.com/SFRJ/springpractice/blob/master/src/main/java/part3/PropertiesLoaderConfiguration.java https://github.com/SFRJ/springpractice/blob/master/src/main/java/part3/PropertiesLoaderConfiguration.java

顺便说一句,如果您使用多个属性源,您也可以执行以下操作:

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

让 IntelliJ 了解属性文件 的相关文章

  • 如何在 Eclipse 中用阿拉伯语读写

    我在 eclipse 中编写了这段代码来获取一些阿拉伯语单词 然后打印它们 public class getString public static void main String args throws Exception PrintS
  • 如何打印整个字符串池?

    我想打印包含文字的整个字符串池String使用添加的对象intern 就在垃圾收集之前 JDK有没有隐式的方法来进行这样的操作 我们如何检查字符串池 EDIT The comment suggests that there may be a
  • 将链接对象转换为流或集合

    我想迭代堆栈跟踪 堆栈跟踪由可抛出对象组成 其 getCause 返回下一个可抛出对象 最后一次调用 getCause 返回 null 示例 a gt b gt null 我尝试使用 Stream iterable 这会导致 NullPoi
  • 有没有好的方法来解析用户代理字符串?

    我有一个Java接收模块User Agent来自最终用户浏览器的字符串的行为需要略有不同 具体取决于浏览器类型 浏览器版本甚至操作系统 例如 FireFox 7 0 Win7 Safari 3 2 iOS9 我明白了User Agent由于
  • 使用 Spring 时实例化对象,用于测试与生产

    使用 Spring 时 应该使用 Spring 配置 xml 来实例化生产对象 并在测试时直接实例化对象 这样的理解是否正确 Eg MyMain java package org world hello import org springf
  • 方法断点可能会大大减慢调试速度

    每当向方法声明行添加断点 在 Intellij IDEA 或 Android Studio 中 时 都会出现一个弹出窗口 方法断点可能会大大减慢调试速度 为什么会这样戏剧性地减慢调试速度 是我的问题吗 将断点放在函数的第一行有什么不同 Th
  • Java:从元素创建 DOM 元素,而不是文档

    如您所知 在 Java 中创建 Dom 元素的正确方法是执行以下操作 import org w3c dom Document import org w3c dom Element Document d Element e e d creat
  • JavaFX - setVisible 隐藏元素但不重新排列相邻节点

    在 JavaFX 中 如果我有一个场景有 2VBox元素和每个VBox有多个Label in it 如果我设置顶部VBox to 无形的 为什么底部VBox 不向上移动顶部的场景VBox was The VBox is 无形的但我希望其他物
  • 服务器到 Firebase HTTP POST 结果为响应消息 200

    使用 Java 代码 向下滚动查看 我使用 FCM 向我的 Android 发送通知消息 当提供正确的服务器密钥令牌时 我收到如下所示的响应消息 之后从 FCM 收到以下响应消息 Response 200 Success Message m
  • spring - 强制 @Autowired 字段的 cglib 代理

    我有混合堆栈 EJB 和 Spring 为了将 Spring 自动装配到 EJB 我使用SpringBeanAutowiringInterceptor 不确定这是否会影响我遇到的问题 在尝试通过以下方式自动装配 bean 时 Scope p
  • 如何将 XMP XML 块序列化为现有的 JPEG 图像?

    我有许多 JPEG 图像 其中包含损坏的 XMP XML 块 我可以轻松修复这些块 但我不确定如何将 固定 数据写回图像文件 我目前正在使用 JAVA 但我愿意接受任何能让这项任务变得容易的事情 这是目标关于 XMP XML 的另一个问题
  • 所有junit测试后的清理

    在我的项目中 我必须在所有测试之前进行一些存储库设置 这是使用一些棘手的静态规则来完成的 然而 在所有测试之后我不知道如何进行清理 我不想保留一些神奇的静态数字来引用所有测试方法的数量 我应该一直维护它 最受赞赏的方法是添加一些侦听器 该侦
  • Java替换特定字符

    这是我在这个网站上的第一个问题 所以我会尽量不要成为一个十足的菜鸟 我目前正在用java 创建刽子手游戏 所以我问你的问题是我们是否被赋予了 幽灵 这个词 并将 Ghost 替换为 hiddenWord ghost length for i
  • 使用 java 按电子邮件发送日历邀请

    我正在尝试使用 java 发送每封电子邮件的日历邀请 收件人收到电子邮件 但不会显示接受或拒绝的邀请 而是将该事件自动添加到他的日历中 我正在使用 ical4j jar 构建活动 邀请 private Calendar getInvite
  • 如何在 Spring MongoDB 聚合上投影 DBRef?

    我在 MongoDB shell 中完成了以下聚合 以获取每个用户每种类型的警报数量 db getCollection alerts aggregate unwind son group id son son level level cou
  • 如何为 Jackson 编写一个包罗万象的(反)序列化器

    当您提前知道类型时 编写自定义序列化器非常容易 例如 MyType一个人可以写一个MyTypeSerializer extends StdSerializer
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • 重写Object类的finalize()方法有什么用?

    据我所知 在java中如果我们想手动调用垃圾收集器 我们可以执行System gc 1 我们在重写的finalize 方法中做了哪些操作 2 如果我们想手动调用JVM垃圾收集器 是否需要重写finalize 方法 我们在重写的 Finali
  • 如何将实例变量传递到 Quartz 作业中?

    我想知道如何在 Quartz 中外部传递实例变量 下面是我想写的伪代码 如何将 externalInstance 传递到此作业中 public class SimpleJob implements Job Override public v
  • Java 推断泛型类型

    我正在寻找类似的推断捕获泛型类型的概念 类似于以下方法片段 但不是捕获泛型类型的类 public

随机推荐

  • 如何从 Sharepoint 资源库获取文件名

    如何从 SharePoint 2013 资源库获取图像的文件名 我正在尝试编写一个 JQuery REST 片段来根据图像的其他列值搜索库中的图像子集并显示它们 我会用FileLeafRef如果是文档库 但我在资源库中找不到等效字段 到目前
  • 计算文本文件中的行数(java)

    下面是我如何计算文本文件中的行数 只是想知道还有其他方法可以做到这一点吗 while inputFile hasNext a inputFile nextLine inputFile close 我正在尝试将数据输入到数组中 我不想读取文本
  • Java:为什么常量池只为字符串值维护?

    我的问题是关于java实习和常量池 Java维护一个常量池java lang String 巧妙地使用 JVM 内存 并且这样做 java lang String 是不可变的 那么为什么java不维护其他不可变类型的常量池 比如Long I
  • moment 与 date-fns 区域设置日期格式

    我正在我们的应用程序的上下文中评估 DateFns 和 Moment 并发现 DateFns 中似乎有一个重要的遗漏 在 Moment 中 区域设置支持允许您格式化日期或时间的区域设置正确的表示形式 例如 日期格式 LL 和 L 将为英语区
  • 如何明智地处理版本控制和核心数据模型?

    当我们使用 git 将 Core Data 模型文件置于版本控制之下时 我们总是会遇到合并更改的可怕时间 我们发现避免手动合并更改的唯一可靠方法是在团队之间进行沟通以阻止访问当一个人做出必要的改变并推动时 然后是下一个人 依此类推 当然有更
  • Django 管理 - 排序 list_filter

    我在 list filter 中有 版本 我希望最新版本位于 全部 列表项之后 在这种情况下 如何对列表进行降序排序 全部 3 6 99 108 3 6 99 107 定义模型中的默认顺序Meta class class MyModel m
  • 很少有刚体导致子弹物理缓慢

    我目前正在将物理引擎 BulletPhysics 集成到我的图形引擎中 在此之前 我使用 SAP 和 Narrowphase 算法实现了简单的碰撞系统 SAP 和 Narrowphase 的时间成本为 3ms 大约有 300 个对象 由于我
  • 相同的 typeid 名称但不是 std::is_same

    使用 C gcc 4 8 3 我有 2 种类型 T1 and T2 具有奇怪的性质typeid T1 name and typeid T2 name 是相同的但是std is same
  • 在Jmeter中提取数组中的json

    如何提取json对象name从下面json data in Jmeter name x age 50 gender Female 我正在做这个 name在 JsonPath Extractor 中 它在我提取到的变量中给出了这个 name
  • 通过模板渲染时材质列表项看起来不同

    我有一个角度材质列表 我想根据外部提供的模板来渲染项目 然而 这似乎影响了mat list item组件呈现内容 特别是matLine孩子们 按如下方式显式定义项目渲染可以按预期工作
  • TCP 与 UDP - 什么是 TCP 连接? [复制]

    这个问题在这里已经有答案了 TCP 连接到底是什么 据我所知 从客户端到服务器没有物理连接 此连接是否只是客户端的套接字与服务器在三次握手后创建的新套接字链接 此后 一旦建立了 连接 连接两端的套接字就知道将其数据包发送到哪里 除了与 TC
  • 声明一个未知大小的数组

    这不是特定于任何编程语言的 问题是 在 n 个数字的数组中查找指定值的索引 现在我的问题是 在下面的代码中你能声明一个数组吗 int n read n int array n 或者这是允许的 int n array n read n 我认为
  • android api 29 上的 adb remount 是否损坏?

    adb remount从模拟器运行时 无法在 api 29 上正常工作 该命令在已尝试过的所有其他模拟器 18 23 25 26 27 和 28 上运行良好 有什么想法可能是为什么吗 Skip mounting partition prod
  • 空数组作为 PostgreSQL 数组列默认值

    我在 postgresql 9 4 数据库中定义了一个数组字段 character varying 64 我可以有一个空数组吗 作为该字段的默认值 设置的语法是什么 如果仅设置括号 则会出现以下错误 SQL error ERROR synt
  • 尽管有两组使用 ggplot2,但具有单回归线的散点图

    我想用 ggplot2 生成一个散点图 其中包含穿过所有数据点 无论它们来自哪个组 的回归线 但同时通过分组变量改变标记的形状 下面的代码生成组标记 但出现两条回归线 每组一条 model lm df ParamY ParamX p1 lt
  • getSupportActionBar() 使用 Robolectric 返回 null

    当我通过基于 Roboelectric 和 JUnit 的测试用例调用 getSupportActionBar 方法时 该方法返回 null 这是我的简单测试用例 package com mobile test import static
  • Wildfly 上的 Db2 驱动程序/数据源设置:无法加载驱动程序 [com.ibm] 的模块

    我想在我的 Wildfly 服务器 Wildfly 8 0 0 Final 和 8 1 0 上配置 db2 的数据源 但这样做遇到了一些问题 我的研究告诉我这是一个两步过程 将驱动程序作为模块安装在 JBOSS HOME modules c
  • constexpr 与未触及的非 constexpr 参数:谁是正确的,clang 还是 gcc?

    我有 4 个测试用例 我相信它们都是有效的 constexpr int f int const unused return 1 void g int const p constexpr int a f p clang error gcc v
  • 使用 Type 对象创建泛型

    我正在尝试使用 Type 对象创建泛型类的实例 基本上 我将在运行时拥有不同类型的对象的集合 并且由于无法确定它们到底是什么类型 所以我认为我必须使用反射 我正在做类似的事情 Type elType Type GetType obj Typ
  • 让 IntelliJ 了解属性文件

    有没有办法告诉 IntelliJ 某个特定的 properties文件将被加载到项目的环境中 我们用 PropertySource注释来加载属性文件 并在多个位置从由已配置的属性确定的文件加载覆盖值 如下所示 Configuration P