2010-09-14 44 views
10

当我去'运行特征'时,从一个黄瓜特征文件我在出现的弹出框中获取下面的错误。Textmate黄瓜捆绑问题 - '运行特征'生成错误

我该如何解决这个问题?


/Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in gem_original_require': no such file to load -- /Users/evolve/Projects/i9/Tornelo/.bundle/environment (LoadError) from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in要求”从/用户/演变/库/ Application Support/TextMate的/捆绑/ Cucumber.tmbundle /支持/ lib目录/cucumber/.../mate.rb:10 from/Users/evolve/Library/Application Support/TextMate/Bundles/Cucumber.tmbundle/Support/lib/cucumber/mate/feature_helper.rb:1:在require' from /Users/evolve/Library/Application Support/TextMate/Bundles/Cucumber.tmbundle/Support/lib/cucumber/mate/feature_helper.rb:1 from /tmp/cucumber-906.rb:2:in要求' from /tmp/cucumber-906.rb:2

+0

这似乎是TextMate的黄瓜束目前在主要分支的发展滞后。人们似乎正在解决问题,比如Bundler/Rspec2/Rails3/RVM。 任何有问题的人,我建议检查github网络地图,并找到最近的分支机构,这些分支机构讨论类似于你所拥有的问题。 https:// github。com/aslakhellesoy/cucumber-tmbundle/network – Evolve 2011-02-16 09:35:20

回答

6

我有同样的错误。要解决它,你需要编辑这个文件:

/Users/richie/Library/Application Support/TextMate/Pristine Copy/Bundles/Cucumber.tmbundle/Support/lib/cucumber 

替换线10以下2行:

environment_file = File.join(ENV['TM_PROJECT_DIRECTORY'], bundle_path, "environment") 
require "#{enviroment_file}" if File.exists?("#{environment_file}.rb") 

如果它存在,只加载文件的方式。

我使用RSpec的2.0,所以我也不得不修改rspec的要求在23行(现为第24行)改为:

require 'rspec' 
+0

谢谢你的伴侣,像一个魅力一样工作! – Pasta 2011-01-23 21:10:41

2

这发生在我身上,因为我加载了rvm并完成了textmate包下列出的步骤。 现在,当我为textmate内的黄瓜功能运行功能时,出现错误'.bundle/environment no load file'。 我没有.bundle/environment.rb文件,因此我创建了一个空文件,并且该功能可以运行,但每次都会删除environment.rb文件! (让我非常希望看到这个修正!) 如果您有任何反馈意见添加到您的文章,我会非常有兴趣听到它。

由于我发布了这个,我已经重新加载了Textmate黄瓜束,问题消失了。 虽然小心 - 安装说明是不正确的 - 他们应该读

mkdir -p ~/Library/Application\ Support/TextMate/Bundles/ 
cd ~/Library/Application\ Support/TextMate/Bundles 
rm -rf Cucumber.tmbundle 
git clone http://github.com/drnic/cucumber-tmbundle Cucumber.tmbundle 
osascript -e 'tell app "TextMate" to reload bundles' 

你不需要“室射频Cucumber.tmbundle”行,如果这是第一个安装。 不需要编辑文件! 完成此操作后,您将可以从textmate内进行更新。

+2

应该是:git clone git://github.com/drnic/cucumber-tmbundle.git Cucumber.tmbundle – avocade 2011-01-11 17:48:31

1

Codeape分叉并更新了该包。 我在一些古鲁的帮助下自己申请了一个黑客。

试试这个: github.com/codeape/cucumber-tmbundle

让我知道如何去user241560。

0

这似乎是TextMate的黄瓜束目前落后于发展主要分支。 人们似乎在解决问题,比如Bundler/Rspec2/Rails3/RVM。

其他任何人有问题,我建议检查github网络地图,并找到最近的分支机构,谈论与你有什么相似的问题。

https://github.com/aslakhellesoy/cucumber-tmbundle/network

2

我有很多的问题,让我的CMD-R功能的工作,但是从黄瓜笔者最新主得到它,走了很长的路要走:

https://github.com/aslakhellesoy/cucumber-tmbundle/tree/

对于在此文件中管线10:

/用户/里奇/库/ Application Support/TextMate的/原始副本/捆绑/ Cucumber.tmbundle /支持/ lib目录/黄瓜/ mate.rb

就评论吧!反正我没有bundle.environment文件。但是如上所述,如果你没有Gem,肯定会改变'require spec'行。耻辱的错误信息是不清晰的,在这件事情。

而且还是!不再有任何“TM_CUCUMBER_BIN”变量,事实证明我的环境不喜欢“cucumber#{file_name}”,而是“bundle exec cucumber#{file_name}”。 (因为我也有作用的Rails安装2.3.11的环境中,也就是为什么)

〜Cucumber.tmbundle /支持/ LIB /黄瓜/伴侣/ runner.rb:

更改行52:

 @output << %Q{Running: #{full_command = "#{RUBY_BIN} #{command} #{@file.rake_task} #{argv.join(' ')}"} \n} 

 @output << %Q{Running: #{full_command = "bundle exec cucumber #{@file.rake_task} #{argv.join(' ')}"} \n} 

一件事!我有我的功能文件嵌套在各种子目录中,所以它不知道从哪里拉出我的步骤定义,尽管调用了Dir.chdir()。因此,我不得不

TM_CUCUMBER_OPTS = -r my_features_dir --format = HTML

添加到TextMate中的首选项=>高级=> ShellVariables设置。

1

我有同样的问题,并通过以下步骤来解决它:

> mate ~/Library/Application\ Support/TextMate/Bundles/Cucumber.tmbundle/Support/lib/cucumber/mate.rb 

评论或删除线20(或错误消息说任何行):

> #require 'spec'