Benjamin Reed
Tue, 19 Feb 2008 10:07:57 -0800
I would think this should be broken into front-end and back-end. The point being that if you are writing a UDF and you get a Jetty conflict at compile time, it's probably a good thing to know because you will get it at runtime. (I realize the example of Jetty in a UDF is a bit far fetched :) I imagine that eventually Hadoop will get a real class manager and then this will not be an issue. (I seem to remember an OSGi patch a while ago.) If you are not careful, you will trade a compile time problem for a runtime problem. ben On Monday 18 February 2008 05:18:51 Iván de Prado wrote: > I have seen that you are embedding the binary classes from several > projects into pig.jar. The idea is package all in a single jar to > simplify its use and reduce the size. I thinks is a good idea. > > By the other hand, people that are developing their own LoadFunc and > other code based in Pig needs to include the pig jar in their projects. > But because pig.jar contains binaries from other OS projects, dependency > conflicts can appears (like conflicts with Jetty). > > I have change the build.xml to be able to generate two jars: > - pig.jar (The current default) > - pig-core.jar > > The pig-core.jar doesn't includes the dependencies into the jar, so > pig-core.jar can be included safely in people projects without generate > dependency conflicts. > > I attach the new build.xml. It would be good if something like that is > added to future versions. > > Congratulations for your nice project, > Iván de Prado