java - Apache Flink 与 AWS Kinesis Analytics

标签 java amazon-web-services maven intellij-idea amazon-kinesis

The actual situation



我想将 Apache Flink 与 Kinesis Analytics 一起使用。就像我没有使用 Java 和 Maven 的经验一样,我会尝试总结我遵循的步骤和结果。
  • 使用 IntelliJ IDEA 作为 IDE
  • 测试这个 example没有任何问题
  • 按照他们的 instruction 更改为 AWS .问题从以下步骤开始:创建和编译 Apache Flink Streaming Java 代码


  • 问题

    如果你想使用 Kinesis 连接器,由于 ASL 许可证,你不能像其他连接器那样做,而且他们不会在 Flink 版本上将 Artifact 部署到 Maven 中央存储库,所以你需要自己构建 Kinesis 连接器下载连接器的源代码来自这里 Apache Flink ,并将其安装到本地 Maven 存储库。

    下载后,您已经按照 steps 构建了模块。 :
    mvn clean install -Pinclude-kinesis -DskipTests
    

    所以我移动到解压缩的文件夹,并运行 mvn 命令,但出现以下错误:
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 50.670 s
    [INFO] Finished at: 2018-12-27T14:35:13+01:00
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.rat:apache-rat-plugin:0.12:check (default) on project flink-parent: Too many files with unapproved license: 2 See RAT report in: C:\Users\...\flink-master\target\rat.txt -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
    [ERROR]
    [ERROR] After correcting the problems, you can resume the build with the command
    [ERROR]   mvn <goals> -rf :flink-parent
    

    试图找到解决方案,我尝试了该用户所说的 here
    mvn clean install -Pinclude-kinesis -DskipTests  -Drat.ignoreErrors=true package
    

    但是,我又遇到了一个错误:
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 01:15 min
    [INFO] Finished at: 2018-12-27T14:40:47+01:00
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal on project flink-shaded-hadoop2: Could not resolve dependencies for project org.apache.flink:flink-shaded-hadoop2:jar:1.8-SNAPSHOT: Could not find artifact jdk.tools:jdk.tools:jar:1.6 at specified path C:\Program Files\Java\jdk-11/../lib/tools.jar -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
    [ERROR]
    [ERROR] After correcting the problems, you can resume the build with the command
    [ERROR]   mvn <goals> -rf :flink-shaded-hadoop2
    

    The questions


  • 我应该如何构建连接器模块?
  • 我应该如何将它安装到我的本地 Maven 存储库?
  • 最佳答案

    在收到类似错误后,即使在使用其他答案的解决方案检查发布分支之后,我也找到了适合我的解决方案。根据build guide在 Flink 文档中,您还可以添加 -Dfast加快构建时间的选项。就我而言,这解决了许可错误:

    mvn clean install -Pinclude-kinesis -DskipTests -Dfast
    

    关于java - Apache Flink 与 AWS Kinesis Analytics,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53946158/

    相关文章:

    maven - Maven插件,ant任务或gradle插件,用于检查是否已安装rpm

    java - Jenkins 不会在自由风格项目上使用环境变量过滤 Maven 资源

    java - Selenium WebDriver Java Maven 使用 sendkeys 输入日期不起作用

    java - char 数组中出现意外字符

    c# - 为什么我无法在 .Net 中使用 AWS SES 接收电子邮件

    mysql - 将 .sql 文件导入 mySQL 没有效果

    java - Docker 文件 COPY 然后 WORKDIR,但文件位于不同的目录中

    java - 内存不足,Java 运行时环境无法继续。当我运行 javac 时

    amazon-web-services - 如何将 Fn::Join 嵌套在 Fn::If 内部?

    java - SLF4J : Class path contains multiple SLF4J bindings. 无法摆脱绑定(bind)