Gianmarco- GIRAPH-64 has been committed, so it should be much easier to treat Giraph as a library and link your vertices against it. Try it out and see if it meets your needs. If not, be sure to open a JIRA so we can improve it.
Thanks, Jakob On Thu, Nov 10, 2011 at 7:31 AM, Gianmarco De Francisci Morales <g...@apache.org> wrote: > Nice! > It looks cleaner than my ant+ivy hack :) > Thanks for sharing, > -- > Gianmarco > > > On Thu, Nov 10, 2011 at 16:18, Claudio Martella <claudio.marte...@gmail.com> > wrote: >> >> Ok, >> >> quite basically this is my pom.xml: >> >> <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/maven-v4_0_0.xsd"> >> <modelVersion>4.0.0</modelVersion> >> <groupId>org.acaro.graffiti</groupId> >> <artifactId>graffiti</artifactId> >> <packaging>jar</packaging> >> <version>1.0-SNAPSHOT</version> >> <name>graffiti</name> >> <url>http://maven.apache.org</url> >> <build> >> <plugins> >> <plugin> >> <groupId>org.apache.maven.plugins</groupId> >> >> <artifactId>maven-assembly-plugin</artifactId> >> <version>2.2</version> >> <configuration> >> >> <outputDirectory>target</outputDirectory> >> <descriptorRefs> >> >> <descriptorRef>jar-with-dependencies</descriptorRef> >> </descriptorRefs> >> </configuration> >> <executions> >> <execution> >> <id>make-assembly</id> >> <phase>compile</phase> >> <goals> >> <goal>single</goal> >> </goals> >> </execution> >> </executions> >> </plugin> >> <plugin> >> <groupId>org.apache.maven.plugins</groupId> >> >> <artifactId>maven-eclipse-plugin</artifactId> >> <configuration> >> >> <downloadSources>true</downloadSources> >> >> <downloadJavadocs>true</downloadJavadocs> >> </configuration> >> </plugin> >> <plugin> >> <groupId>org.apache.maven.plugins</groupId> >> <artifactId>maven-shade-plugin</artifactId> >> <version>1.5</version> >> <executions> >> <execution> >> <phase>package</phase> >> <goals> >> <goal>shade</goal> >> </goals> >> <configuration> >> </configuration> >> </execution> >> </executions> >> </plugin> >> </plugins> >> </build> >> <dependencies> >> <dependency> >> <groupId>junit</groupId> >> <artifactId>junit</artifactId> >> <version>4.8.2</version> >> <scope>test</scope> >> </dependency> >> <dependency> >> <groupId>ch.qos.logback</groupId> >> <artifactId>logback-classic</artifactId> >> <version>0.9.27</version> >> </dependency> >> <dependency> >> <groupId>com.google.guava</groupId> >> <artifactId>guava</artifactId> >> <version>r09</version> >> </dependency> >> <dependency> >> <groupId>org.antlr</groupId> >> <artifactId>antlr</artifactId> >> <version>3.3</version> >> </dependency> >> <dependency> >> <groupId>org.apache.giraph</groupId> >> <artifactId>giraph</artifactId> >> <version>0.70</version> >> </dependency> >> <dependency> >> <groupId>org.apache.hadoop</groupId> >> <artifactId>hadoop-core</artifactId> >> <version>0.20.204.0</version> >> <scope>provided</scope> >> </dependency> >> </dependencies> >> </project> >> >> >> You set your project dependecies as usual, set hadoop-core (you don't >> really need it in the job jar) as <provided> and then use the >> maven-shade (http://maven.apache.org/plugins/maven-shade-plugin/). At >> package goal it will upack your dependencies and re-pack them along >> with your project classes in an uberjar. >> >> maven-shade allows you to set excludes in case of conflicts. >> >> Easy, automatic and clean. >> >> >> Hope this helps, >> Claudio >> >> On Wed, Nov 9, 2011 at 12:19 PM, Avery Ching <ach...@apache.org> wrote: >> > Would be great if you can document what you did. =) >> > >> > Thanks, >> > >> > Avery >> > >> > On 11/8/11 3:13 PM, Claudio Martella wrote: >> >> >> >> Sorry guys, may bad. >> >> >> >> Was calling job.waitForCompletion() directly. I've been coding >> >> standard mapreduce whole weekend... >> >> >> >> Anyway I got a solution for clean packaging of your own application >> >> over giraph, and that is exactly using maven-shade-plugin. it will >> >> prepare the uberjar for you. >> >> >> >> On Tue, Nov 8, 2011 at 9:33 PM, Claudio Martella >> >> <claudio.marte...@gmail.com> wrote: >> >>> >> >>> Hello list, >> >>> >> >>> I'm actually having troubles as well to get my application running. >> >>> >> >>> I've give a shot to maven-shade plugin which unpacks my dependencies >> >>> and packs them all together with my classes in a new jar. >> >>> >> >>> I attach the hierarchy of the jar so that somebody can maybe spot >> >>> what's missing, because i can't get it working. I get an identity >> >>> map-reduce job with jobconf complaining about no job jar being set. >> >>> >> >>> Any idea? >> >>> >> >>> On Sat, Nov 5, 2011 at 5:09 PM, Avery Ching<ach...@apache.org> wrote: >> >>>> >> >>>> Hi Gianmarco, >> >>>> >> >>>> You're right, most of us (to my knowledge) have been using Giraph >> >>>> with >> >>>> an >> >>>> uberjar as you've put it. However, Jakob has been doing some work to >> >>>> make >> >>>> this easier. See the below issue: >> >>>> >> >>>> https://issues.apache.org/jira/browse/GIRAPH-64 >> >>>> >> >>>> If you can suggest a better approach, please add to the issue or >> >>>> create >> >>>> a >> >>>> new one if appropriate. >> >>>> >> >>>> Thanks, >> >>>> >> >>>> Avery >> >>>> >> >>>> On 11/5/11 4:11 AM, Gianmarco De Francisci Morales wrote: >> >>>>> >> >>>>> Hi community, >> >>>>> >> >>>>> I was wondering what is the current best practice to package an >> >>>>> application in a jar for deployment. >> >>>>> I tried the 'hadoop way' by putting giraph-*.jar in the /lib >> >>>>> directory >> >>>>> of >> >>>>> my jar, and using the -libjars option but none of them worked. It >> >>>>> looks >> >>>>> like >> >>>>> the backend classloader is doing some mess and it doesn't find my >> >>>>> own >> >>>>> classes in the jar. >> >>>>> >> >>>>> I resorted to uncompressing the giraph-*.jar and repackaging my >> >>>>> classes >> >>>>> with it, all at the same level (an uber-fat jar), but even though it >> >>>>> works >> >>>>> it doesn't sound like the right approach. >> >>>>> >> >>>>> Any suggestions? >> >>>>> >> >>>>> Thanks, >> >>>>> -- >> >>>>> Gianmarco >> >>>>> >> >>>>> >> >>>>> >> >>>> >> >>> >> >>> >> >>> -- >> >>> Claudio Martella >> >>> claudio.marte...@gmail.com >> >>> >> >> >> >> >> > >> > >> >> >> >> -- >> Claudio Martella >> claudio.marte...@gmail.com > >