You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by "Sengupta, Sohini IN BLR SISL" <so...@siemens.com> on 2011/02/22 09:18:14 UTC

Problem in executing DisplayCanopy

Hi everyone,
I am very new to Mahout. I managed to set it up and run it on hadoop. However, I am facing problems when I try to execute DisplayCanopy program on hadoop. I get following error:

Running on hadoop, using HADOOP_HOME=/usr/local/hadoop
No HADOOP_CONF_DIR set, using /usr/local/hadoop/conf
11/02/21 04:00:11 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
    at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
    at java.lang.reflect.Method.invoke(Method.java:588)
    at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
    at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
    at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)

At command prompt, I give the following command:

/usr/local/mahout-distribution-0.4/bin/mahout  org.apache.mahout.clustering.display.DisplayCanopy

I have set all relevant environment variables.
Any pointers are welcome.

Thanks a lot in advance for your help.
Regards,
Sohini

________________________________
Important notice: This e-mail and any attachment there to contains corporate proprietary information. If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments from your system.
Thank You.

Re: Problem in executing DisplayCanopy

Posted by Grant Ingersoll <gs...@apache.org>.
I can confirm the way you are running this doesn't work and I think it is both b/c the constructor isn't public, but also because the DisplayClustering classes (DisplayCanopy, DisplayKMeans) are intended to be run by invoking the main() method, whereas the bin/mahout program is invoking the MahoutDriver class which tries to invoke ProgramDriver which tries to construct something it doesn't have access to.

Can you open a JIRA issue for this?  In the meantime, the workaround is to invoke the DisplayCanopy.main() class as you would w/ a normal Java program.

On Feb 22, 2011, at 12:18 AM, Sengupta, Sohini IN BLR SISL wrote:

> Hi everyone,
> I am very new to Mahout. I managed to set it up and run it on hadoop. However, I am facing problems when I try to execute DisplayCanopy program on hadoop. I get following error:
> 
> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop
> No HADOOP_CONF_DIR set, using /usr/local/hadoop/conf
> 11/02/21 04:00:11 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
> Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
>    at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
>    at java.lang.reflect.Method.invoke(Method.java:588)
>    at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
>    at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
>    at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>    at java.lang.reflect.Method.invoke(Method.java:597)
>    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
> 
> At command prompt, I give the following command:
> 
> /usr/local/mahout-distribution-0.4/bin/mahout  org.apache.mahout.clustering.display.DisplayCanopy
> 
> I have set all relevant environment variables.
> Any pointers are welcome.
> 
> Thanks a lot in advance for your help.
> Regards,
> Sohini
> 
> ________________________________
> Important notice: This e-mail and any attachment there to contains corporate proprietary information. If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments from your system.
> Thank You.

--------------------------
Grant Ingersoll
http://www.lucidimagination.com/

Search the Lucene ecosystem docs using Solr/Lucene:
http://www.lucidimagination.com/search


RE: Problem in executing DisplayCanopy

Posted by Jeff Eastman <je...@Narus.com>.
Those Display examples need a graphical UI so I wouldn't expect them to run on Hadoop.

-----Original Message-----
From: Sengupta, Sohini IN BLR SISL [mailto:sohini.sengupta@siemens.com] 
Sent: Tuesday, February 22, 2011 12:18 AM
To: user@mahout.apache.org
Subject: Problem in executing DisplayCanopy 

Hi everyone,
I am very new to Mahout. I managed to set it up and run it on hadoop. However, I am facing problems when I try to execute DisplayCanopy program on hadoop. I get following error:

Running on hadoop, using HADOOP_HOME=/usr/local/hadoop
No HADOOP_CONF_DIR set, using /usr/local/hadoop/conf
11/02/21 04:00:11 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
    at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
    at java.lang.reflect.Method.invoke(Method.java:588)
    at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
    at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
    at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)

At command prompt, I give the following command:

/usr/local/mahout-distribution-0.4/bin/mahout  org.apache.mahout.clustering.display.DisplayCanopy

I have set all relevant environment variables.
Any pointers are welcome.

Thanks a lot in advance for your help.
Regards,
Sohini

________________________________
Important notice: This e-mail and any attachment there to contains corporate proprietary information. If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments from your system.
Thank You.

Re: Problem in executing DisplayCanopy

Posted by Sean Owen <sr...@gmail.com>.
Hmm. Make the class DisplayCanopy public -- does that fix it?
(I am guessing I messed this up at some point.)

On Tue, Feb 22, 2011 at 8:18 AM, Sengupta, Sohini IN BLR SISL
<so...@siemens.com> wrote:
> Hi everyone,
> I am very new to Mahout. I managed to set it up and run it on hadoop. However, I am facing problems when I try to execute DisplayCanopy program on hadoop. I get following error:
>
> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop
> No HADOOP_CONF_DIR set, using /usr/local/hadoop/conf
> 11/02/21 04:00:11 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
> Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
>    at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
>    at java.lang.reflect.Method.invoke(Method.java:588)
>    at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
>    at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
>    at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>    at java.lang.reflect.Method.invoke(Method.java:597)
>    at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
>
> At command prompt, I give the following command:
>
> /usr/local/mahout-distribution-0.4/bin/mahout  org.apache.mahout.clustering.display.DisplayCanopy
>
> I have set all relevant environment variables.
> Any pointers are welcome.
>
> Thanks a lot in advance for your help.
> Regards,
> Sohini
>
> ________________________________
> Important notice: This e-mail and any attachment there to contains corporate proprietary information. If you have received it by mistake, please notify us immediately by reply e-mail and delete this e-mail and its attachments from your system.
> Thank You.
>