2016-10-23 12 views
1

私のMac 10.10.6では、r 3.3.1からrStudio 0.99.903までNetLogo 5.3.1を実行しようとしています。私はまた、Java 1.8.0_77-B03にNetlogo 5.3.1およびR 3.3.1 on Mac 10.10.6ヘッドレス例外

> system("java -version") 
java version "1.8.0_77" 
Java(TM) SE Runtime Environment (build 1.8.0_77-b03) 
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode) 
> .jinit() 
> .jcall("java/lang/System", "S", "getProperty", "java.runtime.version") 
[1] "1.8.0_77-b03" 
> 
> Sys.getenv('JAVA_HOME') 
[1] "" 
> Sys.getenv('LD_LIBRARY_PATH') 
[1] ":@[email protected]" 

をインストールしている私はまたRNetLogo_1.0-2 Y rJava_0.9-9を実行していますよ。

R version 3.3.1 (2016-06-21) 
Platform: x86_64-apple-darwin13.4.0 (64-bit) 
Running under: OS X 10.11.6 (El Capitan) 

locale: 
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8 

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base  

other attached packages: 
[1] RNetLogo_1.0-2 igraph_1.0.1 rJava_0.9-9 

loaded via a namespace (and not attached): 
[1] magrittr_1.5 rsconnect_0.5 tools_3.3.1 

私がトライネットログにするときのエラーは次のとおりです。

> nl.path <- ("/Applications/NetLogo 5.3.1/Java") 
> ### Start NetLogo 
> NLStart(nl.path) 
java.awt.HeadlessException 
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:204) 
    at java.awt.Window.<init>(Window.java:536) 
    at java.awt.Frame.<init>(Frame.java:420) 
    at java.awt.Frame.<init>(Frame.java:385) 
    at javax.swing.SwingUtilities$SharedOwnerFrame.<init>(SwingUtilities.java:1758) 
    at javax.swing.SwingUtilities.getSharedOwnerFrame(SwingUtilities.java:1833) 
    at javax.swing.JOptionPane.getRootFrame(JOptionPane.java:1696) 
    at javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:863) 
    at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:666) 
    at javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:637) 
    at nlcon.NLink.<init>(NLink.java:109) 

ここで私がStackExchangeで見つけた解決策をいくつか試しました。

それらのどれもが、自分のコンピュータ上で働いていない
http://conjugateprior.org/2014/12/r-java8-osx/ 
http://charlotte-ngs.github.io/2016/01/MacOsXrJavaProblem.html 
https://github.com/snowflakedb/dplyr-snowflakedb/wiki/Configuring-R-rJava-RJDBC-on-Mac-OS-X 
http://stackoverflow.com/questions/35179151/cannot-load-r-xlsx-package-on-mac-os-10-11 
http://stackoverflow.com/questions/14915898/rnetlogo-function-nlstart-fails-to-launch-gui 

...

誰もが、私はこの仕事をするためにしなければならないべきか任意のアイデアを持っているのですか?

ありがとうございます!

PS1 /私は、MacシェルからRを実行しているのと同じ正確な結果を持っています。

PS2 /私はJava 1.6をインストールして問題をテストした後、それを削除しても何も変更されません。

+0

は、なぜあなたはあなたのnl.pathとして '/ Applications'ディレクトリを選んだのですか? –

+1

ヘルプページ:「MACユーザーのための注意:GUIなしでRNetLogoを実行する場合(つまり、NLStartで引数gui = FALSEを設定する場合)、パッケージをロードする前にAWTを無効にする必要があります。Sys.setenv(NOAWT = GUIモードでRNetLogoを実行するには、JGRアプリケーションからRNetLogoを起動する必要があります(https://cran.r-project.org/package=JGRおよびhttp: //groups.yahoo.com/group/netlogo-users/message/14817)JGRパッケージをロードする前にSys.setenv(NOAWT = 1)を実行し、起動する前にSys.unsetenv( "NOAWT")を実行する必要がありますJGR経由のJGR()。" –

+0

NetLogo Mainlingリストのメッセージにピンポイントがありました...キーでした! – lpuerto

答えて

2

誰かがコメントしたように(私が実際に答えを投稿しなかった理由はわかりません)、問題の鍵は間違ったパッケージを使ってNetLogoを起動していたことです。

まず、Rに正しいJavaホームセットがあることを確認する必要があります。したがって、これをMacシェルで実行してください。

R CMD javareconf 

次に、Rシェル/コンソールで、Javaの場所とバージョンでコンパイルするためにrJavaをソース方法でインストールする必要があります。

install.packages("rJava", type="source", repos="http://cran.us.r-project.org”) 

その後、我々はJGR

install.packages("JGR") 

をインストールし、JGRコンソールを実行して開く必要があります。

require(JGR)  
### Start JGR 
JGR() 

Form on ...私たちはJGRコンソールの残りのスクリプト/コマンドを実行します。

### call netlogo. Set the path where NetLogo is installed 
nl.path <- ("/Applications/NetLogo 5.3.1/") # Mac path 

### Start NetLogo 
    # The /Java directory is where the NetLogo java app lives. Don't set 
    # completely before to make the models path work  
NLStart(file.path(nl.path, "Java")) 

これは動作するはずです。

PS /あなたがhereを読むことができるように、この機能は、Mac用のNetLogoではサポートされていないとLinux

関連する問題