在linux命令行中运行java文件(Storm helloWorld示例),包括库

时间:2015-04-26 08:40:15

标签: java linux command-line javac apache-storm

我正试图在我的机器中以本地模式运行apache storm。

我成功地设法安装并运行风暴如下:

1-安装Apachee ZooKeeper

2-安装风暴

3-配置Storm(config.yaml)

4-启动Storm Master和Worker节点(Nimbus和Supervisor)

5-启动Storm UI

现在我的问题是运行一个helloWorld示例

我在下面的链接中使用了教程

http://wpcertification.blogspot.com/2014/02/helloworld-apache-storm-word-counter.html

它有4个java文件

主要:HelloStorm.java

2- LineReaderSpout

3- WordSpitterBolt

4- WordCounterBolt

现在,当我尝试在命令行(基于linux的系统)中运行主文件时,出现以下错误:

error: package com.spnotes.storm.bolts does not exist
at import com.spnotes.storm.bolts.WordCounterBolt;

我的猜测是我没有正确指定类路径以包含风暴的位置,我在下面做了

javac -classpath ~/Public/apache-storm-0.9.4/lib/ HelloStorm.java 

然而,我仍然存在同样的问题。 有什么建议吗?

1 个答案:

答案 0 :(得分:0)

Packages对应目录,如果你有

import com.spnotes.storm.bolts.WordCounterBolt

在代码中,您需要在编译期间拥有com/spnotes/storm/bolts/WordCounterBolt.java文件。

在运行时,java将需要一个com/spnotes/storm/bolts/WordCounterBolt.class文件。