There is a fundamental difference in starting the topology in LocalClusteror remotely via StormSubmitter(this is the default setting in the project).
storm-core <scope>provided</scope>, . provided maven, jar , JAR. , , - , default.yaml compile. storm-core jar . Storm defaults.yaml "" (.. ) jar . , Storm , , .
, provided , . , , CLASSPATH JVM. provided storm-core ClassNotFound.
, , compile Main/Bolt/Spout maven-jar-plugin. jar, storm-core.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>MyTopology</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<includes>
<include>my/topology/package/**/*.class</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>