Apache storm 包含库/Jar文件的简单而优雅的方法

Apache storm 包含库/Jar文件的简单而优雅的方法,apache-storm,Apache Storm,我的问题类似于这个问题: 但我想知道最新的解决方案和更好的解决方法 我将在storm用户邮件列表中发布相同的描述: 大家好 我正在构建一个包含大量库的拓扑,如spring、geotools等。现在,我使用maven提取每个jar文件并将其打包到一个jar中(正如许多论坛所建议的)。这里的问题是,每个jar有时都有冲突的文件,所以我必须手动合并。另一件事,虽然我将我的库打包在jar中,但storm首先加载它的库。例如,我用番石榴16,暴风雪用番石榴13。我的程序无法运行,因为guava 13已加

我的问题类似于这个问题:

但我想知道最新的解决方案和更好的解决方法

我将在storm用户邮件列表中发布相同的描述:
大家好

我正在构建一个包含大量库的拓扑,如spring、geotools等。现在,我使用maven提取每个jar文件并将其打包到一个jar中(正如许多论坛所建议的)。这里的问题是,每个jar有时都有冲突的文件,所以我必须手动合并。另一件事,虽然我将我的库打包在jar中,但storm首先加载它的库。例如,我用番石榴16,暴风雪用番石榴13。我的程序无法运行,因为guava 13已加载

当前的解决方案是更改clojure脚本,将我的jar放在类路径中的第一位,然后放在其他jar之前。或者,我把我的JAR放在lib/目录中

有没有简单可靠的方法将jar包含在Storm中?抱歉,如果此电子邮件太长。我想澄清一下。

您可以使用而不是maven assembly插件来构建您的uber jar。然后,使用将类移动到不同的包中