Quarkus 应用作为带时间触发器的 Azure 函数
Quarkus app as Azure function with time trigger
我正在尝试开发一个 quarkus 应用程序,它将 运行 作为一个函数并由计时器触发。
我的function.json看起来像这样
{
"scriptFile" : "../${project.build.finalName}.jar",
"entryPoint" : "yoink.DoingService.sayDoing",
"bindings" : [ {
"type" : "timerTrigger",
"direction" : "in",
"name" : "keepAliveTrigger",
"schedule" : "*/10 * * * * *"
} ]
}
这是我的代码
@ApplicationScoped
public class DoingService {
@Inject
BoingService boingService;
public void sayDoing( ){
boingService.sayBoing();
System.out.println("Doiing");
}
}
@ApplicationScoped
public class BoingService {
@FunctionName("keepAlive")
public void sayBoing(){
System.out.println("Boooiiiiin");
}
}
如果我执行此操作,我会得到一个 npe。如果我从 sayDoing() 中删除 boingService.SayBoing() 它的工作。
我是否必须选择不同的入口点,或者我还能做些什么来初始化我的上下文?
你得到一个 NPE,因为 Quarkus 没有正确加载,所以 CDI 容器没有连接依赖项。
Quarkus 仅通过其 HTTP 层支持 运行 Azure 函数,它不支持 运行 像您设置的任意方法。
您可以查看以下有关 Quarkus Azure 函数支持的指南:https://quarkus.io/guides/azure-functions-http
您可以通过 Quarkus github 存储库上的新扩展提案提出支持此类 Azure 功能的扩展提案:https://github.com/quarkusio/quarkus/issues/new?assignees=&labels=kind%2Fextension-proposal&template=extension_proposal.md&title=
我正在尝试开发一个 quarkus 应用程序,它将 运行 作为一个函数并由计时器触发。
我的function.json看起来像这样
{
"scriptFile" : "../${project.build.finalName}.jar",
"entryPoint" : "yoink.DoingService.sayDoing",
"bindings" : [ {
"type" : "timerTrigger",
"direction" : "in",
"name" : "keepAliveTrigger",
"schedule" : "*/10 * * * * *"
} ]
}
这是我的代码
@ApplicationScoped
public class DoingService {
@Inject
BoingService boingService;
public void sayDoing( ){
boingService.sayBoing();
System.out.println("Doiing");
}
}
@ApplicationScoped
public class BoingService {
@FunctionName("keepAlive")
public void sayBoing(){
System.out.println("Boooiiiiin");
}
}
如果我执行此操作,我会得到一个 npe。如果我从 sayDoing() 中删除 boingService.SayBoing() 它的工作。
我是否必须选择不同的入口点,或者我还能做些什么来初始化我的上下文?
你得到一个 NPE,因为 Quarkus 没有正确加载,所以 CDI 容器没有连接依赖项。
Quarkus 仅通过其 HTTP 层支持 运行 Azure 函数,它不支持 运行 像您设置的任意方法。
您可以查看以下有关 Quarkus Azure 函数支持的指南:https://quarkus.io/guides/azure-functions-http
您可以通过 Quarkus github 存储库上的新扩展提案提出支持此类 Azure 功能的扩展提案:https://github.com/quarkusio/quarkus/issues/new?assignees=&labels=kind%2Fextension-proposal&template=extension_proposal.md&title=