All, I am doing a POC in DT and trying to set up my first project. When I try to upload my package, I am getting below exceptions. Could you please help? I have attached pom.xml
Instructions used : http://docs.datatorrent.com/tutorials/salesdimensions/#building-the-sales-dimension-application-in-java ×Close File "salesApp-0.0.1-SNAPSHOT.jar" upload failed. java.io.IOException: Not a valid app package. App Package Name or Version or Class-Path is missing from MANIFEST.MF at com.datatorrent.stram.client.AppPackage.<init>(AppPackage.java:157) at com.datatorrent.stram.client.AppPackage.<init>(AppPackage.java:203) at com.datatorrent.stram.cli.ApexCli.newAppPackageInstance(ApexCli.java:452) at com.datatorrent.stram.cli.ApexCli$GetAppPackageInfoCommand.execute(ApexCli.java:3400) at com.datatorrent.stram.cli.ApexCli$3.run(ApexCli.java:1462)
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <repositories> <repository> <id>datatorrent</id> <name>DataTorrent Release Repository</name> <url>https://www.datatorrent.com/maven/content/repositories/releases/</url> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <groupId>com.example</groupId> <version>0.0.1-SNAPSHOT</version> <artifactId>salesApp</artifactId> <packaging>jar</packaging> <!-- change these to the appropriate values --> <name>My Apex Application</name> <description>My Apex Application Description</description> <properties> <!-- change this if you desire to use a different version of Apex Core --> <apex.version>3.4.0</apex.version> <apex.apppackage.classpath>lib/*.jar</apex.apppackage.classpath> </properties> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> <version>2.9</version> <configuration> <downloadSources>true</downloadSources> </configuration> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <encoding>UTF-8</encoding> <source>1.7</source> <target>1.7</target> <debug>true</debug> <optimize>false</optimize> <showDeprecation>true</showDeprecation> <showWarnings>true</showWarnings> </configuration> </plugin> <plugin> <artifactId>maven-dependency-plugin</artifactId> <version>2.8</version> <executions> <execution> <id>copy-dependencies</id> <phase>prepare-package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>target/deps</outputDirectory> <includeScope>runtime</includeScope> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>app-package-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <finalName>${project.artifactId}-${project.version}-apexapp</finalName> <appendAssemblyId>false</appendAssemblyId> <descriptors> <descriptor>src/assemble/appPackage.xml</descriptor> </descriptors> <archiverConfig> <defaultDirectoryMode>0755</defaultDirectoryMode> </archiverConfig> <archive> <manifestEntries> <Class-Path>${apex.apppackage.classpath}</Class-Path> <DT-Engine-Version>${apex.version}</DT-Engine-Version> <DT-App-Package-Group-Id>${project.groupId}</DT-App-Package-Group-Id> <DT-App-Package-Name>${project.artifactId}</DT-App-Package-Name> <DT-App-Package-Version>${project.version}</DT-App-Package-Version> <DT-App-Package-Display-Name>${project.name}</DT-App-Package-Display-Name> <DT-App-Package-Description>${project.description}</DT-App-Package-Description> </manifestEntries> </archive> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <executions> <execution> <phase>package</phase> <configuration> <target> <move file="${project.build.directory}/${project.artifactId}-${project.version}-apexapp.jar" tofile="${project.build.directory}/${project.artifactId}-${project.version}.apa" /> </target> </configuration> <goals> <goal>run</goal> </goals> </execution> <execution> <!-- create resource directory for xml javadoc --> <id>createJavadocDirectory</id> <phase>generate-resources</phase> <configuration> <tasks> <delete dir="${project.build.directory}/generated-resources/xml-javadoc" /> <mkdir dir="${project.build.directory}/generated-resources/xml-javadoc" /> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>1.9.1</version> <executions> <execution> <id>attach-artifacts</id> <phase>package</phase> <goals> <goal>attach-artifact</goal> </goals> <configuration> <artifacts> <artifact> <file>target/${project.artifactId}-${project.version}.apa</file> <type>apa</type> </artifact> </artifacts> <skipAttach>false</skipAttach> </configuration> </execution> </executions> </plugin> <!-- generate javdoc --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <!-- generate xml javadoc --> <execution> <id>xml-doclet</id> <phase>generate-resources</phase> <goals> <goal>javadoc</goal> </goals> <configuration> <doclet>com.github.markusbernhardt.xmldoclet.XmlDoclet</doclet> <additionalparam>-d ${project.build.directory}/generated-resources/xml-javadoc -filename ${project.artifactId}-${project.version}-javadoc.xml</additionalparam> <useStandardDocletOptions>false</useStandardDocletOptions> <docletArtifact> <groupId>com.github.markusbernhardt</groupId> <artifactId>xml-doclet</artifactId> <version>1.0.4</version> </docletArtifact> </configuration> </execution> </executions> </plugin> <!-- Transform xml javadoc to stripped down version containing only class/interface comments and tags --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>xml-maven-plugin</artifactId> <version>1.0</version> <executions> <execution> <id>transform-xmljavadoc</id> <phase>generate-resources</phase> <goals> <goal>transform</goal> </goals> </execution> </executions> <configuration> <transformationSets> <transformationSet> <dir>${project.build.directory}/generated-resources/xml-javadoc</dir> <includes> <include>${project.artifactId}-${project.version}-javadoc.xml</include> </includes> <stylesheet>XmlJavadocCommentsExtractor.xsl</stylesheet> <outputDir>${project.build.directory}/generated-resources/xml-javadoc</outputDir> </transformationSet> </transformationSets> </configuration> </plugin> <!-- copy xml javadoc to class jar --> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <executions> <execution> <id>copy-resources</id> <phase>process-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/target/classes</outputDirectory> <resources> <resource> <directory>${project.build.directory}/generated-resources/xml-javadoc</directory> <includes> <include>${project.artifactId}-${project.version}-javadoc.xml</include> </includes> <filtering>true</filtering> </resource> </resources> </configuration> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> <dependencies> <!-- add your dependencies here --> <dependency> <groupId>org.apache.apex</groupId> <artifactId>malhar-library</artifactId> <version>3.4.0</version> <!-- If you know that your application does not need transitive dependencies pulled in by malhar-library, uncomment the following to reduce the size of your app package. --> <!-- <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> --> </dependency> <dependency> <groupId>org.apache.apex</groupId> <artifactId>apex-common</artifactId> <version>${apex.version}</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> </dependency> <dependency> <groupId>org.apache.apex</groupId> <artifactId>apex-engine</artifactId> <version>${apex.version}</version> </dependency> <dependency> <groupId>com.datatorrent</groupId> <artifactId>dt-contrib</artifactId> <version>3.4.0</version> </dependency> <dependency> <groupId>com.datatorrent</groupId> <artifactId>dt-library</artifactId> <version>3.4.0</version> </dependency> </dependencies> </project>
