Suhas,

Do not copy any operator libraries into the lib folder. These dependencies
need to be packaged with the application into the .apa application package.
The .apa will also need to contain the Kafka dependencies.

Can you please share what .jar files are in your app package (unzip -l
yourapp.apa)

Thomas


On Mon, Feb 29, 2016 at 9:10 PM, Suhas Gogate <su...@ampool.io> wrote:

> I have single node data torrent/Apex installation. Software installed
> under "/opt/datatorrent/releases/3.2.0”. When I uploaded and launched my
> application I get error finding the class
>  “KafkaSinglePortStringInputOperator”.  I could compile the application
> after adding the dt-contrib dependency but not sure how dt-contrib jars be
> available for application when running on single node data torrent
> installation.
>
> Appreciate help!
>
> —Suhas
> PS: I explicitly copied the  dt-contrib-3.1.1.jar to
> /opt/datatorrent/current/lib/dt-contrib-3.1.1.jar and restarted
> the gateway..
>
>
> Error launching the application:
>
> An error occurred trying to launch the application. Server message:
> java.lang.NoClassDefFoundError:
> com/datatorrent/contrib/kafka/KafkaSinglePortStringInputOperator at
> io.ampool.demo.adtech.Application.populateDAG(Application.java:44) at
> com.datatorrent.stram.plan.logical.LogicalPlanConfiguration.prepareDAG(LogicalPlanConfiguration.java:2108)
> at
> com.datatorrent.stram.client.StramAppLauncher$1.createApp(StramAppLauncher.java:407)
> at
> com.datatorrent.stram.client.StramAppLauncher.launchApp(StramAppLauncher.java:482)
> at com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:2047)
> at com.datatorrent.stram.cli.DTCli.launchAppPackage(DTCli.java:3450) at
> com.datatorrent.stram.cli.DTCli.access$7000(DTCli.java:106) at
> com.datatorrent.stram.cli.DTCli$LaunchCommand.execute(DTCli.java:1892) at
> com.datatorrent.stram.cli.DTCli$3.run(DTCli.java:1449) Caused by:
> java.lang.ClassNotFoundException:
> com.datatorrent.contrib.kafka.KafkaSinglePortStringInputOperator at
> java.net.URLClassLoader.findClass(URLClassLoader.java:381) at
> java.lang.ClassLoader.loadClass(ClassLoader.java:424) at
> java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:810) at
> java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 9 more Fatal
> error encountered
>
>
>
>
> Application.java
>
>
> import com.datatorrent.api.StreamingApplication;
>
> import com.datatorrent.api.DAG;
>
> import com.datatorrent.api.DAG.Locality;
>
> import com.datatorrent.lib.io.ConsoleOutputOperator;
>
> import com.datatorrent.contrib.kafka.KafkaSinglePortStringInputOperator;
>
>
> @ApplicationAnnotation(name = "AdStream")
>
> public class Application implements StreamingApplication
>
> {
>
>   @Override
>
>   public void populateDAG(DAG dag, Configuration entries)
>
>   {
>
>     KafkaSinglePortStringInputOperator input =  dag.addOperator(
> "MessageReader", new KafkaSinglePortStringInputOperator());
>
>
>     ConsoleOutputOperator output = dag.addOperator("Output", new
> ConsoleOutputOperator());
>
>
>     dag.addStream("MessageData", input.outputPort, output.input);
>
>   }
>
> }
>
>

Reply via email to