R扩展中断与NetLogo中扩展目录的连接

R扩展中断与NetLogo中扩展目录的连接,r,netlogo,R,Netlogo,我正在尝试使用R扩展让R和NetLogo彼此对话。我传递的是图形对象,而不仅仅是变量。这意味着我需要从NetLogo导出一个文件,然后在R中导入一个文件,这意味着它们需要指向同一个目录。代码运行良好。但是,一旦运行,NetLogo将失去与extensions文件夹的连接 它似乎与在R中设置工作目录有关,因为下面的MWE也会产生问题 extensions [r] to testSETWD r:eval "setwd(\"C:\")" end 在成功运行此程序,然后尝试对NetLogo进行任

我正在尝试使用
R
扩展让R和NetLogo彼此对话。我传递的是图形对象,而不仅仅是变量。这意味着我需要从NetLogo导出一个文件,然后在R中导入一个文件,这意味着它们需要指向同一个目录。代码运行良好。但是,一旦运行,NetLogo将失去与extensions文件夹的连接

它似乎与在R中设置工作目录有关,因为下面的MWE也会产生问题

extensions [r]

to testSETWD
  r:eval "setwd(\"C:\")"
end
在成功运行此程序,然后尝试对NetLogo进行任何编辑后,我得到错误
找不到扩展名…

只要我在运行R代码后不尝试编辑,NetLogo就会继续工作,我可以毫无问题地使用扩展。只有当我编辑代码并运行语法分析器(绿色勾号)时,问题才会出现


我已经做了一个bug报告,但它显然是不可复制的。我正在运行Windows 8.1 64位。这对其他人来说是个问题吗?

我在NetLogo中使用r扩展时发现了类似的问题

我只需重置为原始工作目录。 例如:

;retain old working directory
r:eval "oldWD <- getwd()"

;The code you are running. ie.
r:eval "setwd(\"C:\")"
r:put "something" NetLogoSomething
r:eval "ReturnedThing <- SomethingElse(something)"

;And then reset the working directory: 
r:eval "setwd(oldWD)"
;保留旧工作目录

r:eval“oldWD在r中更改工作目录不起作用,因为它还更改了NetLogo查找其扩展名所需的Java库路径。请使用r中任何文件的绝对路径,而不是更改工作目录。