0

我可以在这里运行 Harness 示例

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

我调试并发现未找到MyModulewhich extends 。StateFunModule因此,类加载器没有模块,路由器和函数大小为 0,并且在验证步骤中失败。(检查入口、出口、路由器、函数大小不为 0 的步骤)

PS:我只是复制了所有代码,因此@AutoService也包括在内。根据这里,它应该无需进一步配置即可工作。


更新:似乎它的 statefun 问题与@AutoService

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

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

它起作用了,生成了 META-INF。

但是如果使用

        <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>

我测试了这个依赖,它无法生成 META-INF,我很好奇为什么如果我们直接克隆 statefun repo 并且mvn clean package它可以工作。

4

0 回答 0