在示例中找不到StateFunctionModule,未定义任何路由器错误

问题描述

我可以运行线束示例here

但是我将代码复制到另一个目录并在pom.xml中使用相同的依赖项,它引发了错误no routers defined

我调试后发现未找到扩展MyModule的{​​{1}}。因此,类加载器不获取任何模块,并且路由器和func的大小为0,并且在验证步骤中失败。 (检查入口,出口,路由器,函数的大小不为0的步骤)

PS:我只是复制了所有代码,因此也包含了StateFunModule。根据{{​​3}},它无需进一步配置即可工作。


更新: 似乎其与@AutoService

有关的statefun问题

我在另一个项目的pom中添加了以下代码(与statefun无关)

@AutoService

它起作用了,生成meta-inf

但是如果使用

        <dependency>
            <groupId>com.google.auto.service</groupId>
            <artifactId>auto-service</artifactId>
            <version>1.0-rc6</version>
            <optional>true</optional>
        </dependency>

生成meta-inf,我在statefun中发现,所使用的依赖项实际上是

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>statefun-flink-distribution</artifactId>
            <version>2.2-SNAPSHOT</version>
        </dependency>

我测试了这种依赖关系,它不能生成meta-inf,我很好奇为什么我们直接克隆statefun存储库和 <dependency> <groupId>com.google.auto.service</groupId> <artifactId>auto-service</artifactId> <version>1.0-rc6</version> <optional>true</optional> </dependency> 可以起作用。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...