问题标签 [eclipse-microprofile-config]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
263 浏览

java - 将自定义 application.yml 配置的子集加载到 Quarkus 中的地图时遇到问题

我正在尝试使用 quarkus yaml 扩展作为我的主要配置来源,并且我试图找出从 yaml 文件加载地图的最佳方法。

application.yml:_

在代码中,我尝试像这样注入配置值:

其中 Values 包含一个自定义的 Eclipse Microprofile Converter。转换器如下所示:

问题是字符串值是空的,即它没有加载下面的配置。值:

我也尝试过注释一个类@ConfigProperties(prefix = "configuration.value")并在里面有一个地图,但是它不知道如何将它映射到Map预期的......有没有办法创建自定义配置属性转换器?

这是 Eclipse Microprofile 问题吗?这是一个错误吗?这是功能要求吗?:) 或者,有另一种/更好的方法吗?

谢谢您的帮助!

0 投票
1 回答
1000 浏览

java - “dev”配置覆盖 Quarkus 中的“test”配置

在我的 Quarkus 应用程序中,我不希望 Git 对密码进行版本控制。

prod我的配置文件没有任何问题,因为我在$PWD/config/application.properties. 美好的。

对于dev配置文件,我正在使用.env包含以下属性的方法:

我正在尝试设置测试,我需要一些单独的 conf 进行测试。所以我在我的有以下配置src/test/resources/application.properties

不幸的是,测试值 ( )bar.envfoo被应该专用于配置文件的值( ) 覆盖dev

我没有找到一种优雅的方法来解决它。

基于https://quarkus.io/guides/config#overriding-properties-at-runtime我有 5 种可能的方法:

  1. “使用系统属性”:我希望有一个文件,这样每个开发人员都可以拥有自己的文件,而无需在启动前调整命令行;
  2. “使用环境变量”:同样的原因;
  3. .env文件:可以工作,但我不能dev只为配置文件指定值(又名%dev.[...]);
  4. $PWD/config/application.properties文件:嗯,这是开发模式,我觉得它不方便,因为目标被清除,我必须config在每个之后再次复制文件夹mvn clean
  5. 创建我自己的ConfigSourceConfigSourceProvider. 我知道这个可以工作,但我更喜欢避免在我的项目中做特定的事情,并保留内置的 Quarkus 配置。
0 投票
1 回答
661 浏览

java - 没有 bean 有资格注入到注入点[JSR-365 5.2.2]

大多数时候,我在基于 MicroProfile 的微服务中使用 @Inject 注释,我得到“没有 bean 有资格注入到注入点 [JSR-365 5.2.2]”作为警告。这个警告的原因是什么?为了克服它可以做些什么?比如说。我为属性文件注入编写了代码-

现在在 @Inject 注释处,它显示一个警告标志,其中包含建议-没有 bean 有资格注入到注入点 [JSR-365 5.2.2]。

我正在使用带有 Wildfly 19.1 的 Microprofile 3.3 版作为运行时。

注意:通过添加@SuppressWarnings("cdi-ambiguous-dependency"),它消失了,但它没有意义。

0 投票
1 回答
425 浏览

quarkus - 如何将 @ConfigProperties 与 Converter 类一起使用

我尝试实现自定义配置类型并且它有效。但是,当我将自定义类型与一组配置一起使用时,@ConfigProperties它无法通过名称自动识别属性,而是将属性视为具有嵌套属性的对象。

我怎样才能正确地实现这样的行为?(我是 Quarkus 的新手,所以如果我在这里做错了,请纠正我)

这是一个转换自定义类型的代码片段:

0 投票
0 回答
712 浏览

java - NoClassDefFound org.eclipse.microprofile.config.ConfigProvider

我有一个使用microprofile 3.3的小型休息客户端项目,我想使用standalone-microprofile.xml将它部署在原始wildfly 21.0.1.FINAL上。

该项目已使用 jwt 激活安全性,并通过 @RegisterRestClient-Interface 调用另一个 rest-service。

我的问题是授权标头未转移到以下实习生休息电话。

在我的研究中,我发现在 DefaultClientHeadersFactoryImpl.config() 中发生了一个错误,即找不到类 ConfigProvider。我认为使用 pom 中的 microprofile-dependency 和 wildfly 中的standalone-microprofile.xml 会自动为 microprofile 添加所有依赖项。此外,当我另外添加 microprofile-config-api 并且未提供时,我会收到此错误。

有谁知道这个问题以及如何解决它?

如果您需要更多信息:请问;-)

我在 pom.xml 中的唯一依赖项:

我正在使用以下参数启动 wildfly:

这些项目在Github上可用

0 投票
1 回答
271 浏览

java - 在 Helidon MP 中外部化 microprofile-config.properties 文件的任何方式

我是 Helidon MP 的新手,想知道是否有办法将 Helidon MP 属性文件外部化。

0 投票
1 回答
596 浏览

java - MicroProfile 的配置:如何注入自定义对象列表

我正在尝试在 quarkus 中注入对象列表,但收到错误“没有为类 ExternalApiParam 注册转换器”。

我的yaml是:

我的配置类是:

我错了什么?

0 投票
2 回答
81 浏览

microprofile - Microprofile Config:容错度量标记的动态 ConfigSource 值

我目前正在研究为微配置文件容错框架设置度量标签的解决方案。我们将它与指标一起使用,但不能通过容错注释直接设置标签。

所以我们想出了一个解决方法ThreadLocal,通过一个拦截器设置一个值,然后由一个自定义的ConfigSource. 它的方法中的ConfigSource检查"mp.metrics.tags""MP_METRICS_TAGS"配置键。如果每次处理容错注释时都会调用getValue(final String propertyName)它,这基本上会起作用。getValue但似乎情况并非如此,并且该方法的调用是随机发生的。

在我看来,ConfigSources 和它们getValue(final String propertyName)应该总是被调用,因为开发人员可能依赖于每秒都会改变的配置值。

为什么不调用配置源的任何想法?

0 投票
1 回答
156 浏览

open-liberty - 使用 mp.config.profile 设置 Microprofile 活动配置文件在 Liberty 中不起作用

我目前正在尝试将 microprofile open liberty 项目作为 jar 运行。

java -jar myapp.jar -Dmp.config.profile=test

该应用程序运行但没有从 microprofile-config-test.properties 中选择配置值,而是使用来自 microprofile-config.properties 的值

先感谢您

0 投票
1 回答
295 浏览

quarkus - 我应该将@ConfigProperty 字段包装在 javax.enterprise.inject.Instance 对象中吗?

在我的 quarkus 项目中,我在过滤器(ContainerRequestFilter、ContainerResponseFilter)中注入了几个 ConfigProperty。这在启动时给了我以下警告:

但是,配置指南从未提及这一点,甚至显示了在 JAX-RS 资源中注入 ConfigProperty 的示例

此外,尽管有警告,但一切正常。所以我的问题是:我应该关心这个警告并应用它的建议还是可以忽略它?为什么指南中没有提到这一点(无论是简短的,还是参考的)

我正在使用 quarkus 1.12.2,但我也遇到了以前版本的“问题”。