问题
I'm a newbie with Renjin. I'm trying to use Renjin in a Java application. I'm trying to develop the example showed here.
I'm compiling with gradle, as recommended in the renjin's web page.
So, with gradle build all is ok when I run gradle build.
Building with Renjin 0.8.2527
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar UP-TO-DATE
:startScripts UP-TO-DATE
:distTar UP-TO-DATE
:distZip UP-TO-DATE
:assemble UP-TO-DATE
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE
:check UP-TO-DATE
:build UP-TO-DATE
BUILD SUCCESSFUL
Total time: 1.954 secs
But, when I want run the application with gradle run I get this.
Exception in thread "main" org.renjin.eval.EvalException: Could not load package a4Base; tried org.renjin.bioconductor:a4Base, org.renjin.cran:a4Base
at org.renjin.primitives.packaging.NamespaceRegistry.getNamespace(NamespaceRegistry.java:131)
at org.renjin.primitives.packaging.NamespaceRegistry.getNamespace(NamespaceRegistry.java:86)
at org.renjin.primitives.packaging.Packages.library(Packages.java:23)
at org.renjin.primitives.R$primitive$library.doApply(R$primitive$library.java:73)
at org.renjin.primitives.R$primitive$library.apply(R$primitive$library.java:34)
at org.renjin.primitives.special.InternalFunction.apply(InternalFunction.java:55)
at org.renjin.eval.Context.evaluateCall(Context.java:270)
at org.renjin.eval.Context.evaluate(Context.java:194)
at org.renjin.primitives.special.BeginFunction.apply(BeginFunction.java:46)
at org.renjin.eval.Context.evaluateCall(Context.java:270)
at org.renjin.eval.Context.evaluate(Context.java:194)
at org.renjin.eval.Context.evaluate(Context.java:162)
at org.renjin.sexp.Closure.doApply(Closure.java:108)
at org.renjin.eval.ClosureDispatcher.apply(ClosureDispatcher.java:76)
at org.renjin.eval.ClosureDispatcher.applyClosure(ClosureDispatcher.java:61)
at org.renjin.sexp.Closure.apply(Closure.java:82)
at org.renjin.eval.Context.evaluateCall(Context.java:270)
at org.renjin.eval.Context.evaluate(Context.java:194)
at org.renjin.eval.Context.evaluateExpressionVector(Context.java:253)
at org.renjin.eval.Context.evaluate(Context.java:192)
at org.renjin.script.RenjinScriptEngine.eval(RenjinScriptEngine.java:150)
at org.renjin.script.RenjinScriptEngine.eval(RenjinScriptEngine.java:109)
at com.flood.Statistics.testrenjin(Statistics.java:231)
at com.flood.Flood.main(Flood.java:22)
:run FAILED
FAILURE: Build failed with an exception.
I've tried with different packages, with the same result. I searched the packages in the site http://packages.renjin.org/ and the packages exists, so I think isn't about availability.
Anyone had the same problem? And solved it?
Thanks in advance.
回答1:
You need to add the a4base package to your project.
With gradle, you can add the line:
dependencies {
compile "org.renjin.bioconductor:a4Base:1.27.0-b3"
}
And Gradle will download the JAR and make it available to your application.
You can read more about using R packages with Java applications here:
http://docs.renjin.org/en/latest/library/using-packages.html
来源:https://stackoverflow.com/questions/49933173/renjin-cant-load-pckages