bpipe via Conda throws java.lang.NoClassDefFoundError
marvel64 opened this issue · comments
Hi,
On macOS (?) there seems to be an issue with bpipe installed using conda:
This works using the Hello World example from the tutorials and the binary from the repository:
bpipe-0.9.11/bin/bpipe run helloworld.pipe
Also works in a new conda environment:
conda create new -n bpipe
conda activate bpipe
bpipe-0.9.11/bin/bpipe run helloworld.pipe
This does not work:
conda install bpipe
...
## Package Plan ##
environment location: /Users/Kemal/miniconda3/envs/parpipe
added / updated specs:
- bpipe
The following NEW packages will be INSTALLED:
bpipe bioconda/noarch::bpipe-0.9.11-hdfd78af_0
coreutils conda-forge/osx-64::coreutils-9.2-hb7f2c08_0
openjdk conda-forge/osx-64::openjdk-17.0.3-hbc0c0cd_6
...
bpipe run helloworld.pipe *or*
bpipe-0.9.11/bin/bpipe run helloworld.pipe
Both give the following error:
java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7
at org.codehaus.groovy.vmplugin.VMPluginFactory.<clinit>(VMPluginFactory.java:43)
at org.codehaus.groovy.reflection.GroovyClassValueFactory.<clinit>(GroovyClassValueFactory.java:35)
at org.codehaus.groovy.reflection.ClassInfo.<clinit>(ClassInfo.java:107)
at org.codehaus.groovy.reflection.ReflectionCache.getCachedClass(ReflectionCache.java:95)
at org.codehaus.groovy.reflection.ReflectionCache.<clinit>(ReflectionCache.java:39)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerMethods(MetaClassRegistryImpl.java:209)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:107)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:85)
at groovy.lang.GroovySystem.<clinit>(GroovySystem.java:36)
at org.codehaus.groovy.runtime.InvokerHelper.<clinit>(InvokerHelper.java:86)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.createMap(ScriptBytecodeAdapter.java:635)
at bpipe.Tail.<clinit>(Tail.groovy:48)
at bpipe.Tail9.main(Tail9.java:31)
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.reflection.ReflectionCache
at org.codehaus.groovy.runtime.dgmimpl.NumberNumberMetaMethod.<clinit>(NumberNumberMetaMethod.java:33)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:128)
at java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:347)
at java.base/java.lang.Class.newInstance(Class.java:645)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.createMetaMethodFromClass(MetaClassRegistryImpl.java:257)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:110)
at org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.<init>(MetaClassRegistryImpl.java:85)
at groovy.lang.GroovySystem.<clinit>(GroovySystem.java:36)
at org.codehaus.groovy.runtime.InvokerHelper.<clinit>(InvokerHelper.java:86)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.createMap(ScriptBytecodeAdapter.java:635)
at bpipe.Tail.<clinit>(Tail.groovy:48)
at bpipe.Tail9.main(Tail9.java:31)
Tried to see if it works uninstalling openjdk
, but that also uninstalled all dependencies as well.
conda uninstall openjdk
Collecting package metadata (repodata.json): done
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 22.11.1
latest version: 23.1.0
Please update conda by running
$ conda update -n base -c conda-forge conda
Or to minimize the number of packages updated during conda update use
conda install conda=23.1.0
## Package Plan ##
environment location: /Users/Kemal/miniconda3/envs/parpipe
removed specs:
- openjdk
The following packages will be REMOVED:
bpipe-0.9.11-hdfd78af_0
coreutils-9.2-hb7f2c08_0
openjdk-17.0.3-hbc0c0cd_6
Proceed ([y]/n)? y
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
Works.
bpipe-0.9.11/bin/bpipe run helloworld.pipe
This is on macOS 12.6.3
Zsh
conda 22.11.1