You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "John Vines (JIRA)" <ji...@apache.org> on 2015/09/21 05:57:04 UTC

[jira] [Commented] (ACCUMULO-4005) AccumuloClassLoader not finding classes

    [ https://issues.apache.org/jira/browse/ACCUMULO-4005?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14900173#comment-14900173 ] 

John Vines commented on ACCUMULO-4005:
--------------------------------------

I'm not 100% parsing the issue here.

You're stating that if a classpath contains an environment variable then it gets loaded. Are you expecting paths with environment variables to not get loaded?

And I would be hesitant to change that line, as there are times you want to explicitly add a dir to the classpath for resource loading.

> AccumuloClassLoader not finding classes
> ---------------------------------------
>
>                 Key: ACCUMULO-4005
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4005
>             Project: Accumulo
>          Issue Type: Bug
>          Components: start
>    Affects Versions: 1.7.0
>            Reporter: Jim Klucar
>
> org.apache.accumulo.start.classloader.AccumuloClassLoader is not correctly loading classes described in the general.classpaths property. Is appears that if a classpath contains an environment variable for substitution, the class/regex will get loaded. The offending line of code is a boolean logic error on line 198.
> if (extDir.isDirectory())
>   urls.add(extDir.toURI().toURL());
> else {
> ...
> the correction should be 
> if(extDir.isFile())
> but I have not tested this. 
> A workaround is to add a bogus environment variable that will substitute to the empty string in general.classpaths For example
> $DOESNT_EXIST/usr/lib/hadoop/[^.].*.jar 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)