2010-09-07 23 views
9

当我尝试从Rails3中的TextMate运行测试时,我得到一个错误,我追溯到boot.rb。当我尝试通过textmate运行boot.rb时,出现此错误:Textmate Rails3没有这样的文件加载 - 打包器

LoadError: no such file to load — bundler 

method gem_original_require in custom_require.rb at line 31 
method require in custom_require.rb at line 31 
at top level in boot.rb at line 4 

这甚至在一个全新的rails项目中。我能够从终端呼叫

ruby <path_to>/boot.rb 

我可以确认我的TM_RUBY变量是一样的,当我打电话which ruby在命令行中运行相同的boot.rb文件。你有什么线索为什么我可能会得到这个错误?

+0

(注释补充说,我们已经建立了,是的,所述捆绑宝石安装。) – pjmorse 2010-10-21 20:03:08

+1

可能是GEM_PATH环境变量没有被设置..? – mikeycgto 2010-10-22 18:37:25

+0

听起来像是在测试中配置错误,没有足够的回溯,我认为我不能进一步提供帮助。另外,请尝试更新Textmate中的包,因为它们可能有问题。顺便说一句,我的也不行! : -/ – Gav 2010-11-03 14:01:12

回答

13

我遇到了与TextMate和RVM相同的问题。你需要做什么:

  1. 您要使用宝石创建一个包装脚本,使用该RVM命令:

    rvm wrapper [email protected] textmate 
    

    这将添加一个新的别名到您的RVM安装一个名为textmate_ruby。正如你可能知道的那样,假定你正在使用Ruby Enterprise(ree)和一个叫做rails3的gemset,但是任何RVM字符串都可以在这里工作。

  2. 打开TextMate的偏好窗口,进入高级>壳体变量。您需要创建(或更新)TM_RUBY shell变量以下几点:

    /path/to/your/.rvm/bin/textmate_ruby 
    

    如果您的RVM安装在你的用户目录(像我),那将是:

    /Users/[YOUR USER NAME HERE]/.rvm/bin/textmate_ruby 
    
  3. (可选)您可能还需要/想要设置RUBYOPT shell变量,以指示Ruby加载rubygems。这可能有必要使某些软件包(如RSpec)正常工作。只需将值设置为rubygems即可。

这应该是你所需要的。

+0

这对我有用 - 谢谢! – Thilo 2010-11-10 12:45:48

0

这可能发生在你使用RVM(ruby版本管理器)和textmate不知道它。

从命令行执行耙测试工作吗?

+0

rake测试可以从命令行工作,而且我正在使用RVM。 – Schneems 2010-11-05 00:00:42

1

为了让TextMate中使用相同的RVM Ruby解释器在命令行,我做了以下内容:

  • 在命令行,输入which ruby - 对我来说,这是/Users/mgp/.rvm/gems/ruby-1.9.2-p180/bin/ruby
  • 在TextMate的喜好,我在我的PATH shell变量的前面添加了/Users/mgp/.rvm/gems/ruby-1.9.2-p180/bin
  • 在TextMate的喜好,我添加了一个新的shell变量GEM_PATH与价值/Users/mgp/.rvm/gems/ruby-1.9.2-p180:/Users/mgp/.rvm/gems/[email protected]
3

我发现这是最简单的使用方法rvm-auto-ruby

使用which找到rvm-auto-ruby二进制:

$ which rvm-auto-ruby 

结果是路径自动加载二进制:

/Users/yourusername/.rvm/bin/rvm-auto-ruby 

添加此路径的TextMate下:首选项 - >高级 - > Shell变量

它的功能类似于指向您的活动版本的别名Ruby的锡安。

截图:http://cl.ly/23Yl

这些指令适用的RVM网站:https://rvm.io/integration/textmate/

+0

你使用的是Rails 4.2和Ruby 2.2吗?它工作吗?我无法让它工作,当我执行一个文本包,并加载boot.rb:当执行'require'bundler/setup''时崩溃 – 2016-01-20 16:10:46

相关问题