本文将讲述如何在开发环境创建一个Storm项目,下面是步骤:

1、将Storm的相关jar包添加到classpath中;

2、如果使用多语言开发,也要将多语言目录添加到classpath;

点击storm-starter来了解如何使用Eclipse创建storm-starter项目。

将Storm的相关jar包添加到classpath中

你需要使用Storm jars来开发Topology。强烈建议使用Maven。这有一个如何设置Storm项目pom.xml的例子。如果你不想使用Maven,那么你可以手动的将Storm的jar包添加到你的classpath中。

要在Eclipse中设置classpath,需要创建一个新的Java项目,将/src/jvm设置成源码路径,并且保证lib和lib/dev下的jar包已被引用到你的项目。

如果使用多语言开发,将多语言目录添加到classpath

如果你使用其他语言而不是Java来实现Spout或者Bolt的话,那么你应该将你的实现放在multilang/resources/目录下。为了让Storm能够找到这些文件,需要将resources/目录添加到classpath中。你可以在Eclipse中将multilang设置成源码源码。同样,你也需要将multilang/resources设置成源码目录。

要获取更多的用其他语言编写Topology的信息,请阅读Using non-JVM languages with Storm一文。

你可以在Eclipse中运行WordCountTopology.java文件来验证你的设置是否正确。每隔10s你就会在控制台中看见什么信息已经被发射了。

Storm官方文档翻译之创建Storm项目的更多相关文章

  1. Storm官方文档翻译之设置开发环境

    本文将介绍如何设置Storm的开发环境.下面是大纲: 1.下载Storm发布包,解压,将解压的 bin目录放到你电脑的PATH中. 2.为了能够在远程集群中启动或者停止Topology,请将集群信息放 ...

  2. Storm官方文档翻译之在生产环境集群中运行Topology

    在进群生产环境下运行Topology和在本地模式下运行非常相似.下面是步骤: 1.定义Topology(如果使用Java开发语言,则使用TopologyBuilder来创建) 2.使用StormSub ...

  3. Storm官方帮助手册翻译(上)

    Storm作为当前最流行的实时计算框架,自Twitter将其开源后就一直备受关注.由于其具有先天的稳定性以及便捷性,目前被许多大公司所采用,国外像雅虎.雅虎日本.Twitter.OOYALA.Spot ...

  4. Storm系列(三):创建Maven项目打包提交wordcount到Storm集群

    在上一篇博客中,我们通过Storm.Net.Adapter创建了一个使用Csharp编写的Storm Topology - wordcount.本文将介绍如何编写Java端的程序以及如何发布到测试的S ...

  5. Storm官方帮助手册翻译(下)

    使用其他语言编写Bolt Bolt可以使用任意语言编写.用另外一种语言编写Bolt来作为子进程运行.Storm会在标准输入输出的基础上使用Json来与子进程通信.通信协议之需要一个100行的适配器库, ...

  6. vs在微软官方tfs创建私有项目过程

    谁也不是成天创建新项目,每次一创建就跟没干过这活似的,这次把它记下,再用的时候来翻,也希望能给别人点帮助. 上https://dev.azure.com/,tfs原来的网址会往这里跳,现在都在往dev ...

  7. Storm 系列(九)—— Storm 集成 Kafka

    一.整合说明 Storm 官方对 Kafka 的整合分为两个版本,官方说明文档分别如下: Storm Kafka Integration : 主要是针对 0.8.x 版本的 Kafka 提供整合支持: ...

  8. GreenDao官方文档翻译(上)

    笔记摘要: 上一篇博客简单介绍了SQLite和GreenDao的比较,后来说要详细介绍下GreenDao的使用,这里就贴出本人自己根据官网的文档进行翻译的文章,这里将所有的文档分成上下两部分翻译,只为 ...

  9. Retrofit官方文档翻译

    Retrofit官方文档翻译 官方文档网址 http://square.github.io/retrofit/ 介绍 Retrofit 将你的 HTTP API 转换为 Java 接口. public ...

随机推荐

  1. Linux中的shell函数编写

    function huge_cp() { while read line1; do cp $line1 ../; done; } function huge_rm() { while read lin ...

  2. java学习 (2)xml操作 SAX(增、删、改、查)

    sax是事件驱动的,sax是一种推模式 SAX常用事件: startDocument()----文档开始事件 startElement()-----元素开始事件 charElement()----文本 ...

  3. js 的四种设计模式的优缺点

    原始模式: var Car = new Object; Car.color = "blue"; Car.door = 4; Car.showColor = function() { ...

  4. python Redis

    Redis非关系型数据库,可以做消息队列功能,可以实现订阅功能,类似于广播,只要订阅道这个频道,发消息的时候,别人可以收到消息,做监控的时候,所有的客户端往一个频道上发消息,server端只有一个监听 ...

  5. 基于HTML5 的WebSql本地设备数据库

    HTML5 的 Web SQL Database 用本地和会话存储实现简单的对象持久化,对繁琐的关系数据进行处理. 在 W3C 的 Web SQL Database 规范中(参照 介绍)有这样的描述: ...

  6. SQL语句的优化

    1.创建索引 表中数据经常需要用的哪些字段数据进行过滤,则添加该字段的索引,索引相当如一本书的目录,能加快查询数据的速度:同时在新建索引的时候,将需要查询的列,在包含性 列中新增上去,能减少查询语句的 ...

  7. jquery.validationEngine

    引入库文件 <!DOCTYPE html> <head> <!--jQuery--> <script type="text/javascript&q ...

  8. Ubuntu ctrl+alt+b快捷键冲突

    安装了搜狗拼音后,其快捷键ctrl+alt+b会启动软键盘,造成与其他编辑器快捷键的冲突. 为了禁止使用ctrl+alt+b启动软键盘,可以: 1. 在搜狗拼音输入法选择设置 2. 高级设置 3. 高 ...

  9. 明天学习一下验证码的匹配和thinkphp第十三章

    333333333 js 冒泡排序 var arr=[17,19,5,90,3];window.onload=function(){// alert(arr[0]);var len=arr.lengt ...

  10. 谷歌浏览器js debug