Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id E0EDF9A4E for ; Mon, 20 May 2013 18:10:46 +0000 (UTC) Received: (qmail 4947 invoked by uid 500); 20 May 2013 18:10:47 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 4923 invoked by uid 500); 20 May 2013 18:10:47 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 4915 invoked by uid 99); 20 May 2013 18:10:47 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 May 2013 18:10:47 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of cjnolet@gmail.com designates 209.85.210.181 as permitted sender) Received: from [209.85.210.181] (HELO mail-ia0-f181.google.com) (209.85.210.181) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 May 2013 18:10:36 +0000 Received: by mail-ia0-f181.google.com with SMTP id y25so7797504iay.40 for ; Mon, 20 May 2013 11:10:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=PdMXHpbjFmKlHPSgLpouiJOxw85a05DUuny30wJD+t4=; b=IVBqnvmAJPaJArsF+rrs+BZvBH1P6ar2KLDBBsXPmlyC7FCKvu6iz68c/j2DTvVNi2 2thsgcpaE4UILatCN8KiPtheaE+wCo92B9juWh+lZCCM02szqrz5WYENJQz1rvurgeQF tOyzZq0CKzD3dGTr3LK/js8IH8krWBvhUjmMg/OJB5kBlihs4QdB42T00t/QuNrtV2cW ss0GKRlw7O7lwMLSuKP8/tr99PvRGCNxyqJQGKOv3s0t/I4rY+PR+l6mIjOA6M3dNIGw z/9uUHfxgv0W3Zm6P5DlkiS8PyR5O4QCogxKUaEXu8PwlX1yYgID4tj79thyaj1Fw/vG bFKg== MIME-Version: 1.0 X-Received: by 10.50.7.36 with SMTP id g4mr6128486iga.64.1369073415852; Mon, 20 May 2013 11:10:15 -0700 (PDT) Received: by 10.64.30.48 with HTTP; Mon, 20 May 2013 11:10:15 -0700 (PDT) In-Reply-To: References: Date: Mon, 20 May 2013 14:10:15 -0400 Message-ID: Subject: Re: dependencies within 1.5 From: Corey Nolet To: dev@accumulo.apache.org Content-Type: multipart/alternative; boundary=089e011779419fa33d04dd2a3e0e X-Virus-Checked: Checked by ClamAV on apache.org --089e011779419fa33d04dd2a3e0e Content-Type: text/plain; charset=ISO-8859-1 Agreed, they also slow down the build. On Mon, May 20, 2013 at 2:09 PM, Christopher wrote: > Maybe... or 'jar-with-dependencies' assembly, or something similar, > might be useful. > I'd probably argue for it to be in a de-activated profile, by default, > though. Shaded jars can become problematic if people start using them > as dependencies. > > -- > Christopher L Tubbs II > http://gravatar.com/ctubbsii > > > On Mon, May 20, 2013 at 2:00 PM, Corey Nolet wrote: > > This may be far out into space- but how would you guys feel about > providing > > a shaded jar in the pom for a new mini module? This may make it easier > for > > users to run the mini accumulo cluster without hadoop/zookeeper > installed. > > > > > > On Mon, May 20, 2013 at 1:56 PM, Christopher > wrote: > > > >> ACCUMULO-1436 for fixing "provided" dependencies. > >> > >> -- > >> Christopher L Tubbs II > >> http://gravatar.com/ctubbsii > >> > >> > >> On Mon, May 20, 2013 at 12:52 PM, Christopher > 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 > 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 > 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 > >> 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 > >> 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.medinets@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 < > cjnolet@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" > > >> >>> 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 < > >> klucar@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. > >> >>> > >> > > > >> >>> > >> > > >> >>> > >> > >> >>> > > > >> >>> > > >> >>> > >> > --089e011779419fa33d04dd2a3e0e--