CellProfiler / python-bioformats

Read and write life sciences file formats
Other
125 stars 45 forks source link

How to install in readme #144

Open wimpomp opened 3 years ago

wimpomp commented 3 years ago

It would be great if there were installation instructions. For example, the right version of java has to be installed first, otherwise, just 'pip install python-bioformats' will fail.

I'm trying to get rid of all log4j output in the terminal when using python-bioformats. The following used to work, but apparently, after reinstall of the os, java, python and python-bioformats, it doesn't anymore since it can't find the jar for log4j even when log4j1.2 and log4j2 are installed (on Ubuntu 20.04).

import javabridge, bioformats javabridge.start_vm(class_path=bioformats.JARS, run_headless=True) log4j = javabridge.JClassWrapper("loci.common.Log4jTools") log4j.enableLogging() log4j.setRootLevel("ERROR")

The following is spit out to the terminal when calling log4j.enableLogging():

11:21:03.711 [Thread-0] DEBUG loci.common.ReflectedUniverse - No such class: org.apache.log4j.Level java.lang.ClassNotFoundException: org.apache.log4j.Level at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_282] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[na:1.8.0_282] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) ~[na:1.8.0_282] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[na:1.8.0_282] at java.lang.Class.forName0(Native Method) ~[na:1.8.0_282] at java.lang.Class.forName(Class.java:348) ~[na:1.8.0_282] at loci.common.ReflectedUniverse.exec(ReflectedUniverse.java:174) ~[bioformats_package.jar:6.6.0] at loci.common.Log4jTools.enableLogging(Log4jTools.java:92) [bioformats_package.jar:6.6.0] 11:21:03.716 [Thread-0] DEBUG loci.common.ReflectedUniverse - No such class: org.apache.log4j.Level java.lang.ClassNotFoundException: org.apache.log4j.Level at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_282] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[na:1.8.0_282] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352) ~[na:1.8.0_282] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[na:1.8.0_282] at java.lang.Class.forName0(Native Method) ~[na:1.8.0_282] at java.lang.Class.forName(Class.java:348) ~[na:1.8.0_282] at loci.common.ReflectedUniverse.exec(ReflectedUniverse.java:174) ~[bioformats_package.jar:6.6.0] at loci.common.Log4jTools.setRootLevel(Log4jTools.java:73) [bioformats_package.jar:6.6.0]