我一直想使用 Apache Storm 从 Kafka 流式传输。我更喜欢 Python,所以我决定使用 streamparse (https://github.com/Parsely/streamparse)。字数统计示例是介绍性示例。我一直试图让它在我的本地机器上工作。我安装了以下版本的 JDK、lein 和storm:
Java 1.8.0_73 Java HotSpot(TM) 64 位服务器 VM 上的 Leiningen 2.6.1
在遵循 streamparse 之后,我运行以下步骤:
稀疏快速入门字数
光盘字数
稀疏运行
我收到以下错误:
从中央检索 org/apache/storm/storm-core/0.10.1/storm-core-0.10.1.pom
从中央检索 org/apache/storm/storm/0.10.1/storm-0.10.1.pom
从中央检索 org/apache/storm/storm-core/0.10.1/storm-core-0.10.1.jar
无法将工件 com.parsely:streamparse:pom:0.0.4-SNAPSHOT 从/转移到 clojars (https://clojars.org/repo/):sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security .provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效证书路径
无法将工件 clojure-complete:clojure-complete:pom:0.2.4 从/转移到 clojars (https://clojars.org/repo/): sun.security.validator.ValidatorException: PKIX path building failed: sun.security .provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效证书路径
这可能是由于 :dependencies 中的拼写错误或网络问题。
如果您使用代理,请尝试设置“http_proxy”环境变量。
我的 project.clj 文件如下所示:
(defproject 字数“0.0.1-SNAPSHOT”
:源路径[“拓扑”]
:resource-paths ["_resources"]
:目标路径“_build”
:min-lein-版本“2.6.1”
:jvm-opts ["-client"]
: 依赖 [[org.apache.storm/storm-core "0.10.1"]
[com.parsely/streamparse“0.0.4-SNAPSHOT”]
]
:jar-exclusions [#"log4j\.properties"#"backtype"#"trident"#"META-INF"#"meta-inf"#"\.yaml"]
:uberjar-exclusions [#"log4j\.properties"#"backtype"#"trident"#"META-INF"#"meta-inf"#"\.yaml"]
)
因此,我的 lein 和storm core 版本设置正确。我不确定我哪里出错了。有人可以帮帮我吗?
-谢谢
最佳答案
这是因为 java 无法识别 https://clojars.org/repo 的根证书颁发机构 (CA) SSL 证书。 .
解决方案是将该证书添加到 java cacerts 文件中,以便它被永久接受。
第一步:获取https://clojars.org的根证书
就是这样!你得到了你的根证书!
第 2 步:将该证书添加到 java cacerts 文件中。
keytool –import –noprompt –trustcacerts –alias ALIASNAME -file /PATH/TO/YOUR/DESKTOP/CertificateName.cer -keystore /PATH/TO/YOUR/JDK/jre/lib/security/cacerts -storepass changeit
这就对了!你的问题解决了。
请注意
关于apache-kafka - Streamparse wordcount 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37398179/