首页 > 代码库 > Storm使用入门之构建开发项目

Storm使用入门之构建开发项目

本篇博文向大伙详细讲解了如何构建Storm的项目工程,概括起来分为两步:

1、向CLASSPATH中添加Storm的jar包

2、如果是使用多语言开发的话,则需要将相应目录添加到CLASSPATH下

接下来请跟着我们一起了解如何将storm-starter(Storm官方DEMO工程)添加到Eclipse中。

步骤一:向CLASSPATH添加Storm依赖包

当我们开发Storm的计算任务(下文统一称之为“topology”)时,需要引入Storm的依赖jar,对此我们推荐采用maven来管理依赖,请参考pom.xml。如果你不想使用maven,那可以自行将Storm发行版本中的包引入到CLASSPATH中。

storm-starter采用的是Leiningen来构建和管理依赖,此工具安装步骤如下:

1、下载安装脚本,请点此此处

2、将脚本放到PATH下,并赋予其可执行权限(chmod 755 lein.sh)

上述步骤完毕之后,请在工程的根目录下执行“lein deps”即可完成示例工程的依赖解析。

此外,如果是希望将工程导入到Eclipse中运行的话,则需要将文件“m2-pom.xml”中涉及的依赖包都引入到工程中即可。下图是导入到IDE后的效果图:

图1 storm-starter导入到IDE后的效果图

步骤二:关于多语言的使用

如果你使用非Java语言来实现storm的spout或bolt组件,那这些实现需要处于工程目录:multilang/resources。在本地模式下,我们应该将resources目录添加到CLASSPATH下,以便storm能够找到这些实现。在Eclipse下,我们可以通过将目录(multilang和multilang/resources)设置为source folder即可完成此操作。

有关使用其他语言编写storm topology的更多信息,请参见“Using non-JVM languanges with storm”。

我们可以通过运行“WordCountTopology”来验证是否成功将storm-starter导入到Eclipse中,如果成功导入的话,我们将会在控制台中看到消息发送日志,持续10秒。如下图:

图2 WordCountTopology运行效果图