Hi,

I'm trying to register an simple extension point for my plugin - using
nutch 0.9.

I keep running into this exception from hadoop.log:


2009-04-27 18:15:56,155 INFO  plugin.PluginRepository -         Ontology
Model Loader (org.apache.nutch.ontology.Ontology)
2009-04-27 18:15:56,157 INFO  indexer.IndexingFilters - Adding
org.apache.nutch.indexer.basic.BasicIndexingFilter
2009-04-27 18:15:56,160 WARN  mapred.LocalJobRunner - job_oz369z
java.lang.NoClassDefFoundError: IndexingFilter
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
        at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at
org.apache.nutch.plugin.Extension.getExtensionInstance(Extension.java:156)
        at
org.apache.nutch.indexer.IndexingFilters.<init>(IndexingFilters.java:68)
        at org.apache.nutch.indexer.Indexer.configure(Indexer.java:143)
        at
org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:58)
        at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:82)
        at
org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:34)
        at
org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:58)
        at
org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:82)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:170)
        at org.apache.hadoop.mapred.LocalJobRunner
$Job.run(LocalJobRunner.java:126)
Caused by: java.lang.ClassNotFoundException: IndexingFilter
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
        ... 20 more




My config is pretty simple:

nutch-site.xml

<property>
  <name>plugin.includes</name>
  <value>protocol-http|urlfilter-regex|parse-(text|html|js)|index-basic|
query-(basic|site|url)|summary-basic|scoring-opic|urlnormalizer-(pass|
regex|basic)|location-aware</value>
</property>



plugin.xml

<?xml version="1.0" encoding="UTF-8"?>
<plugin
   id="location-aware"
   name="Location Aware Indexer"
   version="0.0.1"
   provider-name="myplugin.com">

   <runtime>
      <library name="myplugin.jar">
         <export name="*"/>
      </library>
   </runtime>

   <requires>
      <import plugin="nutch-extensionpoints"/>
   </requires>

   <extension id="com.myplugin"
              name="My Plugin"
              point="org.apache.nutch.indexer.IndexingFilter">
      <implementation id="MyPluginIndexingFilter"
                      class="com.myplugin.MyPLuginIndexingFilter"/>
   </extension>

</plugin>



Thanks for any pointers.

Joel

Reply via email to