Return-Path: X-Original-To: apmail-accumulo-user-archive@www.apache.org Delivered-To: apmail-accumulo-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 54CAF17DC5 for ; Thu, 6 Nov 2014 18:10:56 +0000 (UTC) Received: (qmail 70303 invoked by uid 500); 6 Nov 2014 18:10:56 -0000 Delivered-To: apmail-accumulo-user-archive@accumulo.apache.org Received: (qmail 70256 invoked by uid 500); 6 Nov 2014 18:10:56 -0000 Mailing-List: contact user-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@accumulo.apache.org Delivered-To: mailing list user@accumulo.apache.org Received: (qmail 70245 invoked by uid 99); 6 Nov 2014 18:10:55 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Nov 2014 18:10:55 +0000 Received: from mail-ig0-f169.google.com (mail-ig0-f169.google.com [209.85.213.169]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id 12CA21A01AD for ; Thu, 6 Nov 2014 18:10:07 +0000 (UTC) Received: by mail-ig0-f169.google.com with SMTP id hn18so10660078igb.4 for ; Thu, 06 Nov 2014 10:10:52 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.42.84.83 with SMTP id k19mr3686163icl.93.1415297452842; Thu, 06 Nov 2014 10:10:52 -0800 (PST) Received: by 10.64.243.98 with HTTP; Thu, 6 Nov 2014 10:10:52 -0800 (PST) In-Reply-To: References: <545AD812.2050500@gmail.com> Date: Thu, 6 Nov 2014 13:10:52 -0500 Message-ID: Subject: Re: ClassNotFoundException: org.apache.commons.logging.LogFactory From: Christopher To: user@accumulo.apache.org Content-Type: multipart/alternative; boundary=20cf30334819eda8d30507349dd1 --20cf30334819eda8d30507349dd1 Content-Type: text/plain; charset=UTF-8 As a matter of good practice, I do think it's best to avoid wildcards in the classpath, and explicitly add the jars you need. Our examples obviously use wildcards, because that's reasonable for an example, and it works. But, I tend to recommend more targeted classpaths in a real system, whenever possible. I don't know what the situation is for Docker, but presumably, the Docker image includes all the dependencies Accumulo needs, and should have fixed and known locations for all the jars, so it could in theory use explicit paths instead of sweeping wildcards. -- Christopher L Tubbs II http://gravatar.com/ctubbsii On Wed, Nov 5, 2014 at 11:25 PM, David Medinets wrote: > The issue of not finding the LogFactory class was resolved by adding > the following to the general.classpath section of the > accumulo-site.xml file: > > /usr/lib/hadoop/[^.].*.jar, > /usr/lib/hadoop/lib/[^.].*.jar, > /usr/lib/hadoop-hdfs/[^.].*.jar, > /usr/lib/hadoop-hdfs/lib/[^.].*.jar, > /usr/lib/hadoop-yarn/[^.].*.jar, > /usr/lib/hadoop-yarn/lib/[^.].*.jar, > /usr/lib/hadoop-mapreduce/[^.].*.jar, > /usr/lib/hadoop-mapreduce/lib/*.jar > > Thanks. > --20cf30334819eda8d30507349dd1 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
As a matter of good practice, I do think it's best to = avoid wildcards in the classpath, and explicitly add the jars you need. Our= examples obviously use wildcards, because that's reasonable for an exa= mple, and it works. But, I tend to recommend more targeted classpaths in a = real system, whenever possible. I don't know what the situation is for = Docker, but presumably, the Docker image includes all the dependencies Accu= mulo needs, and should have fixed and known locations for all the jars, so = it could in theory use explicit paths instead of sweeping wildcards.


--
Christopher L Tubbs II
http://gravatar.com/ctubbsii

On Wed, Nov 5, 2014 at 11:25 PM, David Medin= ets <david.medinets@gmail.com> wrote:
The issue of not finding the LogFactory class was resolv= ed by adding
the following to the general.classpath section of the
accumulo-site.xml file:

=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop/lib/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-hdfs/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-hdfs/lib/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-yarn/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-yarn/lib/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-mapreduce/[^.].*.jar,
=C2=A0 =C2=A0 =C2=A0 =C2=A0 /usr/lib/hadoop-mapreduce/lib/*.jar

Thanks.

--20cf30334819eda8d30507349dd1--