ACCUMULO-1436 for fixing "provided" dependencies. -- Christopher L Tubbs II http://gravatar.com/ctubbsii
On Mon, May 20, 2013 at 12:52 PM, Christopher <ctubb...@apache.org> wrote: > You're right. I'm not sure why our internal dependencies would be > marked as provided... except maybe I made that mistake to try to deal > with the mess of the 'copy-dependencies' stuff. That should be fixed. > > -- > Christopher L Tubbs II > http://gravatar.com/ctubbsii > > > On Mon, May 20, 2013 at 10:24 AM, John Vines <vi...@apache.org> wrote: >> Jim, accumulo-start is a provided dependency for all of the other versions. >> So when you list accumulo-server as a dependency, it does not pull in the >> provided dependencies. >> >> This is sort of what I was getting at before, Chris. The provided jars >> don't get pulled in/referenced when they are marked as provided. For >> external dependencies, that totally makes sense. But I don't know why we >> need to mark other accumulo parts as provided. I find it difficult to >> believe that that is a standard maven configuration. It is extremely >> painful for downstream clients. >> >> >> On Mon, May 20, 2013 at 9:10 AM, Jim Klucar <klu...@gmail.com> wrote: >> >>> The question mark was in my statement because I didn't actually know if it >>> created a circular dependency. It appears that Corey found it doesn't have >>> one. All I did was put a dependency on accumulo-master and saw that when I >>> did so, Maven didn't pull accumulo-start for me. From my understanding, >>> that is the whole point of Maven, to handle the sub-dependencies of what >>> I'm trying to use and when I tried to use MiniAccumuloCluster, it didn't >>> pull all the right dependencies. >>> >>> >>> On Mon, May 20, 2013 at 8:44 AM, Corey Nolet <cjno...@gmail.com> wrote: >>> >>> > I take that back- the start module does not have an explicit dependency >>> on >>> > accumulo-server. As long as the Main.class is used from the assembly >>> > artifact's classpath, everything should work fine. >>> > >>> > >>> > On Mon, May 20, 2013 at 8:21 AM, Corey Nolet <cjno...@gmail.com> wrote: >>> > >>> > > The only part that makes a circular dependency is including the >>> > > MiniAccumuloRunner in the Main.class. I'm not sure if that warrants >>> > needing >>> > > to rearchitect the runner, since it was made to give users the ability >>> to >>> > > interact with the Miniaccumulocluster as a single node accumulo. It was >>> > > also made to make the maven plugin much easier and standardize the >>> > > interface. Seems like two options are to remove the runner option from >>> > the >>> > > Main.class or move it to the start module. >>> > > >>> > > Personally, I'd opt for moving the runner to the start module. >>> > > On May 20, 2013 8:12 AM, "David Medinets" <david.medin...@gmail.com> >>> > > wrote: >>> > > >>> > >> Combine this work with Dave Marion's work and put MiniAccumuloRunner >>> > into >>> > >> an add-on script? >>> > >> >>> > >> >>> > >> On Mon, May 20, 2013 at 7:49 AM, Corey Nolet <cjno...@gmail.com> >>> wrote: >>> > >> >>> > >> > I think the ability to run "./bin/accumulo mini" may have introduced >>> > >> this >>> > >> > circular dependency. Perhaps the MiniAccumuloRunner should be moved >>> > >> > somewhere else. >>> > >> > On May 20, 2013 12:07 AM, "Christopher" <ctubb...@apache.org> >>> wrote: >>> > >> > >>> > >> > > What do you mean there isn't a way to know this? Doesn't the >>> server >>> > >> > > POM express the dependency on start, explicitly? >>> > >> > > >>> > >> > > How are you executing MiniAccumuloCluster when you get this error? >>> > I'm >>> > >> > > guessing you have a project with a dependency on >>> "accumulo-server"? >>> > >> > > >>> > >> > > Can you elaborate more on this circular dependency risk you >>> mention? >>> > >> > > I'm not sure how "accumulo-server" depending on "accumulo-start" >>> is >>> > a >>> > >> > > circular dependency. Are you suggesting "accumulo-start" also has >>> a >>> > >> > > dependency on "accumulo-server"? Because... it shouldn't... >>> > >> > > >>> > >> > > -- >>> > >> > > Christopher L Tubbs II >>> > >> > > http://gravatar.com/ctubbsii >>> > >> > > >>> > >> > > >>> > >> > > On Sun, May 19, 2013 at 10:10 PM, Jim Klucar <klu...@gmail.com> >>> > >> wrote: >>> > >> > > > MiniAccumuloCluster moved to the 'server' module, which is fine. >>> > >> > > However, I >>> > >> > > > now have to have a dependency on accumulo-start and >>> > accumulo-server >>> > >> to >>> > >> > be >>> > >> > > > able to use the MiniAccumuloCluster. There isn't really any way >>> > of >>> > >> > know >>> > >> > > > that until you fire up a MiniAccumloCluster object and call >>> > .start() >>> > >> > and >>> > >> > > > get a ClassNotFoundException on the Main class from >>> > accumulo-start. >>> > >> > > Seems >>> > >> > > > like depending on accumulo-server should pull in accumulo-start >>> > >> > (creates >>> > >> > > > circular dependency?) or some other solution should be found. >>> > >> > > >>> > >> > >>> > >> >>> > > >>> > >>>