如何将 Micronaut CLI 应用程序中的 ApplicationContext 获取到 Httpclient class?
How to get ApplicationContext in Micronaut CLI application into Httpclient class?
我是 运行 一个通过 Picocli runner 的 Micronaut CLI 应用程序,想在应用程序执行期间将 applicationContext 用于 injecting/getting bean。
@HttpRetryable
@Client("SERVICE_ID")
interface TestHttpClient {
}
@Inject
lateinit var applicationContext: ApplicationContext
private class AuthenticationFilter() : HttpClientFilter {
// calling appcontext here
println("appContext is Running " + appContext.isRunning)
}
但是在执行时出现这个错误
kotlin.UninitializedPropertyAccessException: lateinit property applicationContext has not been initialized```
How this can be fixed ?
属性 需要在 AuthenticationFilter
class 中。 class 应该用 jakarta.inject.Singleton
注释并且不应该是 private
我是 运行 一个通过 Picocli runner 的 Micronaut CLI 应用程序,想在应用程序执行期间将 applicationContext 用于 injecting/getting bean。
@HttpRetryable
@Client("SERVICE_ID")
interface TestHttpClient {
}
@Inject
lateinit var applicationContext: ApplicationContext
private class AuthenticationFilter() : HttpClientFilter {
// calling appcontext here
println("appContext is Running " + appContext.isRunning)
}
但是在执行时出现这个错误
kotlin.UninitializedPropertyAccessException: lateinit property applicationContext has not been initialized```
How this can be fixed ?
属性 需要在 AuthenticationFilter
class 中。 class 应该用 jakarta.inject.Singleton
注释并且不应该是 private