Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

org.lemsl.jlems? #62

Open
rgerkin opened this issue May 27, 2017 · 1 comment
Open

org.lemsl.jlems? #62

rgerkin opened this issue May 27, 2017 · 1 comment

Comments

@rgerkin
Copy link
Contributor

rgerkin commented May 27, 2017

@pgleeson
I have a fresh copy of neuroConstruct checked out yesterday inside a Docker container based on Ubuntu. I've done the usual:

./updatenC
./nC.sh -make
./ant run
cd osb
./checkOsb.sh
cd ..
ant test -Dsimulators='NEURON'

and all tests pass. However, I can't actually run my code because of:

File "/home/jovyan/work/dev/neuralensemble/neuroConstruct/pythonnC/utils/jutils.py", line 12, in <module>
    import ncutils
  File "/home/jovyan/work/dev/neuralensemble/neuroConstruct/pythonNeuroML/nCUtils/ncutils.py", line 51, in <module>
    from ucl.physiol.neuroconstruct.neuroml import NeuroMLFileManager
NoClassDefFoundError: java.lang.NoClassDefFoundError: org/lemsml/jlems/core/sim/LEMSException

or from the jython interpreter (./nCjython.sh, which sources the nCenv file):

from ucl.physiol.neuroconstruct.neuroml import NeuroMLFileManager
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
java.lang.NoClassDefFoundError: org/lemsml/jlems/core/sim/LEMSException
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:278)
	at org.python.core.Py.loadAndInitClass(Py.java:933)
	at org.python.core.Py.findClassInternal(Py.java:868)
	at org.python.core.Py.findClassEx(Py.java:919)
	at org.python.core.packagecache.SysPackageManager.findClass(SysPackageManager.java:133)
	at org.python.core.packagecache.PackageManager.findClass(PackageManager.java:28)
	at org.python.core.packagecache.SysPackageManager.findClass(SysPackageManager.java:122)
	at org.python.core.PyJavaPackage.__findattr_ex__(PyJavaPackage.java:137)
	at org.python.core.PyObject.__findattr__(PyObject.java:879)
	at org.python.core.imp.importFromAs(imp.java:1044)
	at org.python.core.imp.importFrom(imp.java:1016)
	at org.python.pycode._pyx1.f$0(<stdin>:1)
	at org.python.pycode._pyx1.call_function(<stdin>)
	at org.python.core.PyTableCode.call(PyTableCode.java:166)
	at org.python.core.PyCode.call(PyCode.java:18)
	at org.python.core.Py.runCode(Py.java:1312)
	at org.python.core.Py.exec(Py.java:1356)
	at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:231)
	at org.python.util.InteractiveInterpreter.runcode(InteractiveInterpreter.java:89)
	at org.python.util.InteractiveInterpreter.runsource(InteractiveInterpreter.java:70)
	at org.python.util.InteractiveInterpreter.runsource(InteractiveInterpreter.java:46)
	at org.python.util.InteractiveConsole.push(InteractiveConsole.java:112)
	at org.python.util.InteractiveConsole.interact(InteractiveConsole.java:93)
	at org.python.util.jython.run(jython.java:396)
	at org.python.util.jython.main(jython.java:145)
Caused by: java.lang.ClassNotFoundException: org.lemsml.jlems.core.sim.LEMSException
	at java.net.URLClassLoader$1.run(URLClassLoader.java:359)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:348)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:347)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	... 26 more

java.lang.NoClassDefFoundError: java.lang.NoClassDefFoundError: org/lemsml/jlems/core/sim/LEMSException

If I try importing the lemsml stuff, I get:

>>> import org
>>> import org.lemsml
>>> import org.lemsml.jlems
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named jlems

I something not compiling or have the jlems classes moved somewhere else?

@pgleeson
Copy link
Member

@rgerkin I managed to run

 import org.lemsml.jlems

fine with a fresh docker ubuntu setup with nC installed as you outline if I run

./nC.sh -python

I've not ever used your nCjython.sh, which seems to require jython installed natively, and it fails for me as NC_HOME is not set (source $NC_HOME/nCenv.sh doesn't work then)... I think more testing of nCjython.sh is fresh environments is required.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants