RNetLogo работает на R3.1.1.0?

1

Когда я пытаюсь запустить RNetLogo из R, используя функцию NLStart(). Я получаю сообщения о java и GUI не открывается. Я использую MacOSX 10.9.5 64-бит, NetLogo 5.1.0 и R 3.1.1.

> library(rJava)
> library(RNetLogo)
> nl.path <- "/Applications/NetLogo\ 5.1.0/NetLogo\ 5.1.0.app"
> NLStart(nl.path, nl.version=5, gui=FALSE)

java.lang.NoClassDefFoundError: org/nlogo/workspace/Controllable
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:249)
Caused by: java.lang.ClassNotFoundException
    at RJavaClassLoader.findClass(RJavaClassLoader.java:383)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 2 more

После этого я пытаюсь использовать "JGR и Deducer и экстракторы". Код и ошибки:

> install.packages(c("JGR","Deducer","DeducerExtras"))
> Sys.setenv(NOAWT=1)
> library(JGR)
> Sys.unsetenv("NOAWT")
> JGR()

При запуске JGR код:

Loading required package: JGR
Loading required package: rJava
Loading required package: JavaGD
Loading required package: iplots
starting httpd help server ... done
Loading required package: RNetLogo
Loading required package: DeducerExtras
Loading required package: Deducer
Loading required package: ggplot2
Use suppressPackageStartupMessages to eliminate package startup messages.
Loading required package: car
Loading required package: MASS
Attaching package: ‘Deducer
Loading required package: irr
Loading required package: lpSolve

> nl.path<-"/users/Pabolo/Applications/NetLogo\ 5.1.0/NetLogo.jar"
> NLStart(nl.path)
Error on setwd(nl.path) : you can not change the working directory.

С nl.path будет путь к директории app. Есть некоторые ошибки. Я запускаю все это над JGR().

> nl.path<-"/Applications/NetLogo\ 5.1.0"
> NLStart(nl.path)
Warning: ch.randelshofer.quaqua.util.OSXPreferences failed to load /Users/Pabolo/Library/Preferences/.GlobalPreferences.plist
java.io.IOException: parseReal: unsupported byte count:128
    at ch.randelshofer.quaqua.util.BinaryPListParser.parseReal(BinaryPListParser.java:703)
    at ch.randelshofer.quaqua.util.BinaryPListParser.parseObjectTable(BinaryPListParser.java:424)
    at ch.randelshofer.quaqua.util.BinaryPListParser.parse(BinaryPListParser.java:315)
    at ch.randelshofer.quaqua.osx.OSXPreferences.readPList(OSXPreferences.java:176)
    at ch.randelshofer.quaqua.osx.OSXPreferences.updateCache(OSXPreferences.java:99)
    at ch.randelshofer.quaqua.osx.OSXPreferences.ensureCached(OSXPreferences.java:90)
    at ch.randelshofer.quaqua.osx.OSXPreferences.get(OSXPreferences.java:79)
    at ch.randelshofer.quaqua.osx.OSXPreferences.getString(OSXPreferences.java:45)
    at ch.randelshofer.quaqua.BasicQuaquaLookAndFeel.initSystemColorDefaults(BasicQuaquaLookAndFeel.java:151)
    at ch.randelshofer.quaqua.leopard.Quaqua15LeopardLookAndFeel.initSystemColorDefaults(Quaqua15LeopardLookAndFeel.java:208)
    at ch.randelshofer.quaqua.BasicQuaquaLookAndFeel.getDefaults(BasicQuaquaLookAndFeel.java:76)
    at javax.swing.UIManager.setLookAndFeel(UIManager.java:520)
    at javax.swing.UIManager.setLookAndFeel(UIManager.java:564)
    at org.nlogo.swing.Utils.setSystemLookAndFeel(Utils.java:41)
    at org.nlogo.app.App.<init>(App.scala:302)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at org.picocontainer.injectors.AbstractInjector.newInstance(AbstractInjector.java:147)
    at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:332)
    at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:272)
    at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:354)
    at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
    at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
    at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
    at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:692)
    at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:646)
    at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:671)
    at org.nlogo.app.App$.main(App.scala:140)
    at org.nlogo.app.App.main(App.scala)
    at nlcon.NLink_v5.<init>(NLink_v5.java:96)
    at org.rosuda.JRI.Rengine.rniRunMainLoop(Native Method)
    at org.rosuda.JRI.Rengine.run(Rengine.java:640)
unable to find translation for: edit.viewSettings.2D.frameRate in GUI_Strings for locale: es
unable to find translation for: edit.viewSettings.2D.frameRate.info in GUI_Strings for locale: es
>
  • 0
    Разве nl.path не должен быть путем к каталогу, а не приложению? (Согласно первому упоминанию). Этот пакет немного сбивает с толку то, как он это контролирует, но я думаю, это ваше исправление. Я не использую Mac, но это определение работает в 3.1.0
  • 0
    Есть некоторые ошибки с этим. Есть проблема между Java, MacOsx, RNetlogo и R ??? Я делаю все правильно?
Показать ещё 2 комментария
Теги:
netlogo

1 ответ

0

Вы должны изменить свой путь на: nl.path <- "/Applications/NetLogo 5.3/app".

Они изменили структуру каталогов, так что файл netlogo jar теперь находится в подкаталоге "app".

Источник: qaru.site/questions/5528275/...

Надеюсь, что это помогает, это сработало для меня.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню