0

在 IDea 11.1.3 Build-IU#117.798 中并尝试使用其 Ruby 插件在使用 Rails 3.2.8 的项目中运行规范,ruby 1.9.3p194(2012-04-20 修订版 35410)[x86_64-darwin11.4.0] .

我认为这与在 OS X Lion Server (10.7.5) 上安装了 postgres 的自制版本有关,我在 OS X 服务器版本 pg 之前在我的路径上安装了该版本。

在 Terminal.app 中:

$ whereis pg_dump
/usr/bin/pg_dump
$ pg_dump -V
pg_dump (PostgreSQL) 9.1.3
$ psql -V
psql (PostgreSQL) 9.1.3
contains support for command-line editing
$ /path/to/home/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -e 'puts "#{`pg_dump -V`}"'
pg_dump (PostgreSQL) 9.1.3
$ /path/to/home/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -e 'puts "#{`psql -V`}"'
psql (PostgreSQL) 9.1.3
contains support for command-line editing

如果我将此添加到我的 Rakefile:

raise "whereis pg_dump = #{`whereis pg_dump`}, pg_dump -V = #{`pg_dump -V`}, psql -V = #{`psql -V`}"

在 IDea 中,当我执行 Run -> Debug -> spec 时,控制台中会显示:

/path/to/home/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -e at_exit{sleep(1)};$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /path/to/home/.rvm/gems/ruby-1.9.3-p194@some_project/gems/ruby-debug-ide-0.4.17.beta14/bin/rdebug-ide --port 51515 -- /path/to/home/.rvm/gems/ruby-1.9.3-p194@global/bin/rake spec
Testing started at 10:59 AM ...
Fast Debugger (ruby-debug-ide 0.4.17.beta14, ruby-debug-base 0.11.30.pre10) listens on 127.0.0.1:51515
rake aborted!
whereis pg_dump = /usr/bin/pg_dump
, pg_dump -V = pg_dump (PostgreSQL) 9.0.5
, psql -V = psql (PostgreSQL) 9.0.5

(See full trace by running task with --trace)

Process finished with exit code 137

知道为什么它会在同一路径上获得不同版本的二进制文件吗?

4

1 回答 1

1

PATH在 RubyMine 和终端中是不同的。为了使其与终端相同,请运行 RubyMine:

open -a /Applications/RubyMine.app/

另一种选择是PATH在 RubyMine 运行/调试配置中指定。

相关话题:

于 2012-10-11T16:09:46.947 回答