10

次のパッケージをビルドするときに問題が発生します:https ://github.com/yoni/rbundler

私のテストbundleでは、単一の依存関係を持つ些細なパッケージでrbundlerのコマンドを実行しようとしています。テストはOSXマシンでは合格ですが、x86_64-redhat-linux-gnuJenkinsサーバーでは失敗します。両方のマシンは、このバグ修正devtoolsを含む0.7.1でR2.15.1を実行しています。

完全なテスト出力は、この要点にあります。

これが私が見ているエラーの短い要約です:

Error in file(filename, "r", encoding = encoding) : 
  cannot open the connection
Calls: local ... eval.parent -> eval -> eval -> eval -> eval -> source -> file
In addition: Warning message:
In file(filename, "r", encoding = encoding) :
  cannot open file 'startup.Rs': No such file or directory
Execution halted

この背景には、Rの依存関係管理システムを構築しようとしていることがあります。つまり、Rプロジェクトは、システム全体またはユーザー全体のライブラリを使用せずに実行できる必要があります。むしろ、Rプロジェクトには、ルートディレクトリの下に独自のライブラリがインストールされます。

Rの依存関係管理に関連する以前のStackOverflowの質問については、Rの依存関係管理を参照してください。

4

2 に答える 2

6

R_TESTS私の場合、この問題は、設定された環境変数が原因でしたstartup.Rs

テスト内から別の R プロセスを実行すると (私の場合は OGS qsub 経由で送信されました)、この環境変数の存在が問題を引き起こします。

于 2015-01-16T23:15:25.553 に答える
0

ご質問に直接お答えすることはできませんが、何が起こっているかについてより多くの情報を得るために、2 つのことをお試しください。

  1. 「env」を使用して、OSX マシンと Jenkins ホストの環境変数をダンプします
  2. Linux では strace を、OSX では dtruss を介してプロセスを実行し、システム コールをトラップします。

strace/dtruss は、startup.Rs および env の出力を検索している場所を明らかにする必要があります。おそらく、異なる結果を説明するシステム間で異なる環境変数が得られます。

于 2012-09-13T17:58:44.177 に答える