具有IoT集线器触发器的Java Azure函数未启动

具有IoT集线器触发器的Java Azure函数未启动,java,azure,azure-functions,azure-iot-hub,azure-triggers,Java,Azure,Azure Functions,Azure Iot Hub,Azure Triggers,每次我的IoT集线器接收到一批64条消息时(或者不管怎样,数字并不重要),我都会尝试触发一个java函数。我按照此创建基本代码,然后编辑创建此函数 public class Function { @FunctionName("ProcessIotMessages") public void processIotMessages( @EventHubTrigger(name = "message", eventHubName = "samples-

每次我的IoT集线器接收到一批64条消息时(或者不管怎样,数字并不重要),我都会尝试触发一个java函数。我按照此创建基本代码,然后编辑创建此函数

public class Function {

@FunctionName("ProcessIotMessages")
public void processIotMessages(
        @EventHubTrigger(name = "message",
                eventHubName = "samples-workitems",
                connection = "HUB-1544-DEV_events_IOTHUB") List<String> messages,
        final ExecutionContext context) {...Function Logic...}
}
公共类函数{
@FunctionName(“ProcessIotMessages”)
公共消息无效(
@EventHubTrigger(name=“message”,
eventHubName=“示例工作项”,
connection=“HUB-1544-DEV\u events\u IOTHUB”)列出消息,
最终ExecutionContext){…函数逻辑…}
}
connection参数是IoT Hub连接字符串,格式为事件中心兼容端点(例如endpoint=sb://iothub hostname bla)

我使用上面链接的指南中指定的maven插件打包和部署这段代码。部署工作正常,我可以从门户中看到mi功能启动并运行,没有错误,HUB-1544-DEV_events_IOTHUB设置应用程序使用正确的连接字符串正确创建

我在传送门中注意到的唯一奇怪的东西是触发刀片。如您所见,基数是一,而它应该设置为多,因为我没有在函数中指定基数参数。根据这一点,默认值是多。这让我觉得我无法传递正确的触发器语法


无论如何,问题是该功能不是从本地计算机或门户启动的。有什么建议吗?Thx

正如@evisnobu在评论中所发布的,问题在于事件中心的名称。只需转到
Portal->your IoT Hub->build-in-endpoints
,在那里找到配置触发器的所有信息。

eventHubName=“samples workitems”,
-这看起来有点离谱,你确定这是正确的名称吗?(
Portal->your IoT Hub->内置端点)
?它是
内置端点中列出的
事件中心兼容名称
。在连接字符串中,名称位于EntityPath下。非常感谢!成功了。那是一个愚蠢的错误事实上…我的错。再次非常感谢:)