2013-10-27 4 views
8

私はShinyで遊んでみようとしており、すぐに基本的な例を実行しようとしました。サイコロはありません。シャイニーrunExampleエラー - サーバーの作成に失敗しました

私はGoogleに問題を試みましたが、外部サーバーで問題を解決するためにすべての問題が発生しているようです。

多分私は間違っていますが、私はこのアプリケーションがlocalhostを使って私のブラウザで動作すると仮定しました。ここで

は私がやったことです:ここでは

install.packages("shiny") 
library(shiny) 
runExample("01_hello") 

は誤りです:

> runExample("01_hello") 

Listening on port 8100 
Error in startServer("0.0.0.0", port, httpuvCallbacks) : 
    Failed to create server 

と完全酒のために、ここに私のセッション情報がある:ハドレーの最後の@

> sessionInfo() 
R version 3.0.1 (2013-05-16) 
Platform: x86_64-apple-darwin10.8.0 (64-bit) 

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

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

other attached packages: 
[1] shiny_0.7.0 

loaded via a namespace (and not attached): 
[1] bitops_1.0-5 caTools_1.14 digest_0.6.3 httpuv_1.1.0 RJSONIO_1.0-3 tools_3.0.1 xtable_1.7-1 
+0

現在のバージョンのhttpuvは1.2.0で、 'startServer'は' httpuv'からエクスポートされた関数です。そのパッケージを更新して修正しますか? –

+0

1.2.0に更新しましたが、ダイスはありません。同じエラー。 – Btibert3

+0

どのようにRを実行していますか?そのエラーはhttpuvがサーバを起動できなかったことを伝えています。おそらくそのポートにバインドできなかったためです – hadley

答えて

4

shinyhttpuvを再インストールするようにコメントしました。

devtools::install_github(c("shiny", "httpuv"), "rstudio") 
6

このエラーは、ポートがブロックされている可能性があります。

私はポート3259で光沢のあるサーバーを実行していました。何らかの理由でサーバーを強制終了しましたが、もう一度起動しようとしたときにこのエラーが発生しました。 startServerで

エラー( "0.0.0.0"、ポート、httpuvCallbacks): は、サーバー コールの作成に失敗しました:runApp - あなたが最初にどのプロセスを見つけることができます解決するには>のstartServer

- > startAppDir - >にstartAppを3259 [[::空白:]]

、その後

1
そのプロセスを殺すグレップ|

netstatの-anpあなたのポートをblocingプロセスを表示するためにあなたのポート まず使用netstatコマンドをブロックしています

実際に再インストールするだけで、httpuvサーバーを難しい方法で停止しました。 あなたがしなければならないのは、現在実行中のサーバstopServerだけです。ここで何が起きるかは、httpuvサーバが起動していますが、何らかの理由で停止しませんでした。今すぐあなたが再び起動することはできませんあなたが輝いているアプリケーションを再実行しようとすると、既に開始されているので、あなたは上記のエラーが発生します。

は、あなただけのループ内でサービスを実行することができ、この場合には、あなたのプログラムを起動するには、サーバを再起動する必要はありません。

while (TRUE) { 
    .Call("httpuv_run", PACKAGE = "httpuv", 250) 
    Sys.sleep(0.001) 
} 

をあなたも前のサーバを停止することができますし、使用して再度起動しますが。

stopServer(server)

しかし、この場合には、サーバー変数が格納されている場所を知っている必要があります。

関連する問題