2016-07-14 30 views
2

我試圖調試非常簡單的拓撲結構(1個噴嘴1個螺栓)風暴localcluster無法加載博爾特

public class JoinerTopologyTest { 

public static void main(String[] args) throws IOException { 
    Config conf = new Config(); 
    conf.setNumWorkers(5); 
    conf.setDebug(true); 

    TopologyBuilder builder = new TopologyBuilder(); 
    builder.setSpout("SPOUT-1",new MySpout(),1); 
    builder.setBolt("BOLT-1",new Bolt1(), 3) 
      .shuffleGrouping("SPOUT-1"); 
    //builder.setBolt("JOINER", new JoinerBolt(),1) 
    //  .shuffleGrouping("BOLT-1") 
    //  .shuffleGrouping("SPOUT-1","str1"); 

    final LocalCluster cluster = new LocalCluster(); 
    cluster.submitTopology("TOPO1",conf,builder.createTopology()); 


    System.in.read(); 

    cluster.shutdown(); 
} 

}

但是,當我從InteliJ IDEA運行它,我得到:

java.lang.RuntimeException:java.lang.ClassNotFoundException:com.pixonic.zephyr.compaction.tests.Bolt1 at org.apache.storm.utils.Utils.javaDeserialize(Utils.java:181)〜[storm- core-1.0.1.jar:1.0.1] 在org.apache.storm.utils.Utils.getSetComponentObject(Utils.java:430)〜[風暴芯1.0.1.jar:1.0.1]

[ Thread-15]錯誤oasdworker - 初始化服務器mk-worker時出錯 java.lang.RuntimeException:java.lang.ClassNotFoundException:org.apache.storm.daemon.acker at org.apache.storm.utils.Utils。 javaDeserialize(Utils.java:181)〜[storm-core-1.0.1.jar:1.0.1] at org.apache.storm.utils.Utils.getSetComponentObject(Utils.java:430)〜[storm-core- 1.0.1.jar:1.0.1]

但是相同的拓撲在集羣模式下運行良好。 PS我在調試模式下的pom.xml我有:

<dependency> 
     <groupId>org.apache.storm</groupId> 
     <artifactId>storm-core</artifactId> 
     <version>1.0.1</version> 
     <scope>compile</scope> 
    </dependency> 

編輯

項目重現錯誤:https://github.com/holinov/storm-101-localcluster/tree/master

+0

爲什麼你把「解決」而不是自己真正回答問題? –

回答

0

在這裏張貼的要求在評論

已解答

要在IDEA中運行或調試拓撲,請不要使用maven runner。 只需右鍵單擊拓撲類,然後選擇Debug-> JoinerTopologyTest ... main()沒有MVN圖標