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

Unable to execute klarigi #1

Open
NuriaQueralt opened this issue Apr 18, 2022 · 1 comment
Open

Unable to execute klarigi #1

NuriaQueralt opened this issue Apr 18, 2022 · 1 comment

Comments

@NuriaQueralt
Copy link

Hi!

I read your preprint and I was trying to play with klarigi, but I cannot run it due to some errors that arise. I tried two different ways:

1 GitHub

I cloned your repo, and executed:

groovy klarigi/src/main/groovy/klarigi/Klarigi.groovy --data data/eg_data.tsv --ontology ontology/hp.owl  --group OMIM:604271

and got the error:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.codehaus.groovy.reflection.CachedClass (file:/usr/share/groovy/lib/groovy-2.4.17.jar) to method java.lang.Object.finalize()
WARNING: Please consider reporting this to the maintainers of org.codehaus.groovy.reflection.CachedClass
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
/home/nur/workspace/klarigi/klarigi/src/main/groovy/klarigi/Klarigi.groovy: 17: unable to resolve class org.apache.log4j.Level
@ line 17, column 1.
import org.apache.log4j.Level;
^

/home/nur/workspace/klarigi/klarigi/src/main/groovy/klarigi/Klarigi.groovy: 18: unable to resolve class org.apache.log4j.Logger
@ line 18, column 1.
import org.apache.log4j.Logger;
^

/home/nur/workspace/klarigi/klarigi/src/main/groovy/klarigi/Klarigi.groovy: 19: unable to resolve class org.apache.log4j.LogManager
@ line 19, column 1.
import org.apache.log4j.LogManager;
^

/home/nur/workspace/klarigi/klarigi/src/main/groovy/klarigi/Klarigi.groovy: 50: unable to resolve class Scorer
@ line 50, column 19.
this.scorer = new Scorer(ontoHelper, coefficients, data, excludeClasses, threads)
^
and continues to 11 errors in total.

2 Tutorial on colab

I downloaded and executed klarigi like:

mkdir tutorial | cd tutorial
!wget https://lokero.xyz/klarigi-0.0.12-SNAPSHOT.tar
!tar -xvf klarigi-0.0.12-SNAPSHOT.tar
!mv klarigi-0.0.12-SNAPSHOT klarigi

./klarigi/bin/klarigi --data ../data/eg_data.tsv --ontolohy ../ontology/hp.owl --group OMIM:604271

and got the error:

Exception in thread "main" groovy.lang.GroovyRuntimeException: Could not find matching constructor for: java.io.File(Boolean)
at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:1845)
at groovy.lang.MetaClassImpl.invokeConstructor(MetaClassImpl.java:1615)
at org.codehaus.groovy.runtime.callsite.MetaClassConstructorSite.callConstructor(MetaClassConstructorSite.java:46)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:59)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:263)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:277)
at klarigi.Klarigi.loadOntology(Klarigi.groovy:129)
at klarigi.Klarigi$loadOntology$0.callCurrent(Unknown Source)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:51)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:171)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:185)
at klarigi.Klarigi.(Klarigi.groovy:36)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:72)
at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:105)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallConstructor(CallSiteArray.java:59)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:263)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:277)
at klarigi.App.main(App.groovy:82)

I presume that I am missing some Groovy configuration since I usually don't code/execute scripts in Groovy. Could you shed light on this?

Thank you very much!
Kind regards,
Núria

@reality
Copy link
Owner

reality commented Apr 25, 2022

Hi,

Sorry you had trouble running the program. Currently, the error reporting is not very good at all - I am working to improve that.

Issue 1:

Klarigi requires a compiled version to use. The easiest way to do that is to download the latest release here: https://github.com/reality/klarigi/releases/tag/0.0.12 and run that (in a similar way to that described in your part two, and in the colab notebooks)

(( there is also this release https://github.com/reality/klarigi/releases/tag/0.0.13-SNAPSHOT-2 , which has improved metrics/permutation testing etc, but is less stable, and new features aren't all yet documented. I plan on finishing the 0.0.13 full release very soon to co-incide with final submission of the paper/update of preprint/documentation ))

Issue 2:

It looks like you mistyped the '--ontology' argument, so the command should be

./klarigi/bin/klarigi --data ../data/eg_data.tsv --ontology ../ontology/hp.owl --group OMIM:604271

It complains about a 'false' value being passed to java File because there is no '--ontology' argument, which it needs to execute the program. It should check the necessary arguments and give a helpful message, not just try to run with no value... I will keep this issue open so that I remember to fix the parameter checking before the release of the next version

Hope that helps!

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