Return-Path: Delivered-To: apmail-lucene-pylucene-dev-archive@minotaur.apache.org Received: (qmail 92704 invoked from network); 9 Mar 2011 16:15:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 9 Mar 2011 16:15:55 -0000 Received: (qmail 26000 invoked by uid 500); 9 Mar 2011 16:15:55 -0000 Delivered-To: apmail-lucene-pylucene-dev-archive@lucene.apache.org Received: (qmail 25961 invoked by uid 500); 9 Mar 2011 16:15:54 -0000 Mailing-List: contact pylucene-dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: pylucene-dev@lucene.apache.org Delivered-To: mailing list pylucene-dev@lucene.apache.org Received: (qmail 25953 invoked by uid 99); 9 Mar 2011 16:15:54 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 Mar 2011 16:15:54 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [158.37.60.246] (HELO ice.nersc.no) (158.37.60.246) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 Mar 2011 16:15:49 +0000 Received: from localhost (localhost [127.0.0.1]) by ice.nersc.no (Postfix) with ESMTP id 961C81FB87F5 for ; Wed, 9 Mar 2011 17:15:27 +0100 (CET) X-Virus-Scanned: amavisd-new at nersc.no Received: from ice.nersc.no ([127.0.0.1]) by localhost (ice.nersc.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id E4DD5t3i50-r for ; Wed, 9 Mar 2011 17:15:12 +0100 (CET) Received: from ice.nersc.no (localhost [127.0.0.1]) by ice.nersc.no (Postfix) with ESMTP id D4C1F1FB87D3 for ; Wed, 9 Mar 2011 17:15:12 +0100 (CET) Received: from 158.37.60.21 (SquirrelMail authenticated user antonk) by ice.nersc.no with HTTP; Wed, 9 Mar 2011 17:15:12 +0100 Message-ID: <4c34899c21bd22074deb1da9eb8c27f7.squirrel@ice.nersc.no> Date: Wed, 9 Mar 2011 17:15:12 +0100 Subject: real reason for java.lang.NoClassDefFoundError ? From: "Anton Korosov" To: pylucene-dev@lucene.apache.org User-Agent: SquirrelMail/1.4.20 MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal Hello! I'm trying to use BEAM/Visat software in Python. It is a large project with > 100 JARs. I try to 'convert' these JARs into Python specifying each after --jar option: python -m jcc.__init__ \ --python testbeam \ --jar /host/local/beam-4.8/modules/beam-landsat-reader-1.2.1.jar \ --jar /host/local/beam-4.8/modules/beam-meris-boreal-lakes-1.4.2.jar \ --jar /host/local/beam-4.8/modules/beam-meris-case2-core-1.4.2.jar \ --jar /host/local/beam-4.8/modules/beam-meris-case2-regional-1.4.2.jar \ --jar /host/local/beam-4.8/modules/beam-meris-cloud-1.5.203.jar \ --jar /host/local/beam-4.8/modules/beam-meris-eutrophic-lakes-1.4.2.jar \ --jar /host/local/beam-4.8/modules/beam-merisl3-reader-1.1.jar \ ... However I immediately got error: While loading com/jidesoft/lucene/c$1 Traceback (most recent call last): File "/usr/lib/python2.6/runpy.py", line 122, in _run_module_as_main "__main__", fname, loader, pkg_name) File "/usr/lib/python2.6/runpy.py", line 34, in _run_code exec code in run_globals File "/usr/local/lib/python2.6/dist-packages/JCC-2.7-py2.6-linux-x86_64.egg/jcc/__init__.py", line 32, in import jcc.__main__ File "/usr/local/lib/python2.6/dist-packages/JCC-2.7-py2.6-linux-x86_64.egg/jcc/__main__.py", line 98, in cpp.jcc(sys.argv) File "/usr/local/lib/python2.6/dist-packages/JCC-2.7-py2.6-linux-x86_64.egg/jcc/cpp.py", line 501, in jcc cls = findClass(className.replace('.', '/'), iii) File "/usr/local/lib/python2.6/dist-packages/JCC-2.7-py2.6-linux-x86_64.egg/jcc/cpp.py", line 73, in findClass cls = _findClass(className) jcc.cpp.JavaError: java.lang.NoClassDefFoundError: org/apache/lucene/queryParser/QueryParser Java stacktrace: java.lang.NoClassDefFoundError: org/apache/lucene/queryParser/QueryParser at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Caused by: java.lang.ClassNotFoundException: org.apache.lucene.queryParser.QueryParser at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) ... 11 more Why is that? Does that mean that the class com/jidesoft/lucene/c$1 has reference to a class org/apache/lucene/queryParser/QueryParser but the latter is not given in any JAR? How can such situation occur if Beam/Visat works perfectly? Could it be that Beam/Visat simply don't call org/apache/lucene/queryParser/QueryParser ? What should I do? Download a JAR with org/apache/lucene/queryParser/QueryParser or rather --exclude com/jidesoft/lucene/c ? Will it influence performance of the Python module? Thank you very much for any ideas/suggestions! Anton