Closed GoogleCodeExporter closed 9 years ago
This isn't a bug in Cinfony as Cinfony is working as described in the
installation.
If you suspect that Debian CDK 1.2.8 is not equal to CDK 1.2.8, then please
contact its Debian maintainers or the CDK development team.
Original comment by baoille...@gmail.com
on 23 May 2011 at 1:42
Debian's CDK is actually split into a bunch of different files...maybe that's
the issue.
I'll raise the issue to their maintainers.
Thank you.
Original comment by ssorga...@gmail.com
on 23 May 2011 at 3:18
Or maybeit could be the handling of multiple jars in the CLASSPATH by Cinfony?
Can you try unzipping all of the CDK jars into a temporary directory and then
zipping them together into a single jar and see if that works...?
Original comment by baoille...@gmail.com
on 23 May 2011 at 3:29
I did, but I keep getting the same error as above
'jpype._jexception.LinkageErrorPyRaisable: java.lang.NoClassDefFoundError:
nu/xom/ParsingException'
Looks like a missing class.
I tried before unpacking and repacking upstream cdk just to make sure I was
doing it right, and i worked. If we compare the final directory structures,
they are a bit different... I'm going to file a bug in debian's BTS.
Original comment by ssorga...@gmail.com
on 23 May 2011 at 4:03
That last error message show that you forgot to put the xom libraries in your
classpath:
http://packages.debian.org/search?keywords=libxom-java
/usr/share/java/xom-1.2.1.jar
The huge CDK jar you download from SF contains all the 3rd party libs. Debian
does not.
Egon
Original comment by egon.wil...@gmail.com
on 23 May 2011 at 4:36
And the jaxen libraries were missing in the classpath, too. I added them, but
it still doesn't work, but now with a different error:
ssorgatem:/tmp$ python
Python 2.6.6 (r266:84292, Apr 20 2011, 09:34:38)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from glob import glob
>>> import os
>>> os.environ['CLASSPATH'] = ":".join(glob("/usr/share/java/cdk*.jar")) + ":"
+ ":".join(glob("/usr/share/java/xom*.jar"))+ ":" +
":".join(glob("/usr/share/java/jaxen*.jar"))
>>> from cinfony import cdk
/usr/lib/pymodules/python2.6/jpype/_pykeywords.py:18: DeprecationWarning: the
sets module is deprecated
import sets
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/cinfony/cdk.py", line 13, in <module>
from cdkjpype import *
File "/usr/local/lib/python2.6/dist-packages/cinfony/cdkjpype.py", line 74, in <module>
forcefields = list(cdk.modeling.builder3d.ModelBuilder3D.getInstance().getFfTypes())
File "/usr/lib/pymodules/python2.6/jpype/_jpackage.py", line 53, in __call__
raise TypeError, "Package "+self.__name+" is not Callable"
TypeError: Package
org.openscience.cdk.modeling.builder3d.ModelBuilder3D.getInstance is not
Callable
>>>
I don't know about the CDK API,but something called ".getInstance" looks like
it should be callable.
Original comment by ssorga...@gmail.com
on 23 May 2011 at 5:56
That's probably Jama missing from your classpath: libjama-java
Original comment by egon.wil...@gmail.com
on 23 May 2011 at 6:03
It's missing and I didn't have it installed, because of libcdk-java doesn't
depend on it.
I installed it and added it to the classpath... and still the same error.
Original comment by ssorga...@gmail.com
on 23 May 2011 at 6:25
> Comment #8 on issue 7 by ssorga...@gmail.com: Cinfony 1.1b2 not working
> It's missing and I didn't have it installed, because of libcdk-java doesn't
> depend on it.
I guess it would be useful if the libcdk-java package would Recommend those
indeed.
> I installed it and added it to the classpath... and still the same error.
You added vecmath earlier already, right?
libvecmath-java
OK. To not keep iterating all the time, I would like to ask you took
*.libdepends in this folder:
http://cdk.git.sourceforge.net/git/gitweb.cgi?p=cdk/cdk;a=tree;f=src/META-INF;h=
707275e69041cb2ec66792216909d2295bfe921b;hb=5a358fc50630450fe5e3dda0a3874d337637
d19d
These files define the dependencies for each of the CDK modules... I do not
know on what CDK modules Cinfony depends, but it gives you some idea of what
additional jars you are looking for.
You can also look at the build dependencies, as Debian uses those on this page:
http://packages.debian.org/source/wheezy/cdk
Just installing all packages listed there is probably the quickest solution.
Original comment by egon.wil...@gmail.com
on 23 May 2011 at 6:35
I installed all its build dependencies and added them to the classpath:
Python 2.6.6 (r266:84292, Apr 20 2011, 09:34:38)
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> from glob import glob
>>>
>>> os.environ['CLASSPATH'] = ":".join(glob("/usr/share/java/cdk*.jar")) + ":"
+ ":".join(glob("/usr/share/java/xom*.jar"))+ ":" +
":".join(glob("/usr/share/java/jaxen*.jar")) + ":" +
":".join(glob("/usr/share/java/jama*.jar"))+ ":" +
":".join(glob("/usr/share/java/vecmath*.jar"))+ ":" +
":".join(glob("/usr/share/java/crimson*.jar"))+ ":" +
":".join(glob("/usr/share/java/jgraph*.jar"))+ ":" +
":".join(glob("/usr/share/java/mysql*.jar"))+ ":" +
":".join(glob("/usr/share/java/pg*.jar"))+ ":" +
":".join(glob("/usr/share/java/xpp*.jar"))+ ":" +
":".join(glob("/usr/share/java/xerces*.jar"))+ ":" +
":".join(glob("/usr/share/java/xml*.jar"))
>>>
>>> from cinfony import cdk
/usr/lib/pymodules/python2.6/jpype/_pykeywords.py:18: DeprecationWarning: the
sets module is deprecated
import sets
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/cinfony/cdk.py", line 13, in <module>
from cdkjpype import *
File "/usr/local/lib/python2.6/dist-packages/cinfony/cdkjpype.py", line 77, in <module>
_isofact = cdk.config.IsotopeFactory.getInstance(cdk.ChemObject().getBuilder())
jpype._jexception.ExceptionPyRaisable: java.io.IOException: There was a problem
getting org.openscience.cdk.config.isotopes.xml as a stream
I think I'll just give up trying to use the debian package. Anyway, I think the
package dependencies are buggy, as it states it depends solely on
default-jre-headless | java5-runtime-headless
Original comment by ssorga...@gmail.com
on 23 May 2011 at 7:04
The Debian maintainers should be running the CDK test suite as part of their QA
when preparing the package. That should pick up on any missing dependencies,
right?
Original comment by baoille...@gmail.com
on 23 May 2011 at 7:10
Noel, the test suite is not part of the source distribution. Don't remember why
not, though.
I can confirm the isotopes.xml missing from the cdk-core.jar.
> I think I'll just give up trying to use the debian package.
Well, you're using Debian testing after all... there is a reason why it is
called testing.
Anyway, thanx for your persistence... the last thing is a serious bug, though
this may be a bug on the CDK side.
> Anyway, I think the package dependencies are buggy
Please file a bug report about that.
Original comment by egon.wil...@gmail.com
on 23 May 2011 at 7:16
> Please file a bug report about that.
Done
Thank you both for your patience.
Original comment by ssorga...@gmail.com
on 23 May 2011 at 7:39
I filed a bug report about the missing .xml files:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=627712
Original comment by egon.wil...@gmail.com
on 23 May 2011 at 7:41
Original issue reported on code.google.com by
ssorga...@gmail.com
on 21 May 2011 at 12:56