Ruby on Rails。捆绑器。黄瓜。耙中止!命令失败,状态为 (1) Posted 2023-02-15
技术标签:
【中文标题】Ruby on Rails。捆绑器。黄瓜。耙中止!命令失败,状态为 (1) 【英文标题】:Ruby on Rails. Bundler. Cucumber. rake aborted! Command failed with status (1)
【发布时间】:2011-04-14 00:31:15
【问题描述】:
在 Rails 3 中使用 Bundler 和 Cucumber 时遇到问题。
当我运行$ rake cucumber
时,我得到以下输出:
bundle exec /usr/local/bin/ruby -I "/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-
0.8.5/lib:lib" "/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-0.8.5/bin/cucumber" --profile 默认
(在 /home//practice/rails/blog)
使用默认配置文件...
呜呜呜
1 个场景(1 个未定义)
4 个步骤(4 个未定义)
0m1.552s
您可以使用这些 sn-ps 为未定义的步骤实现步骤定义:
给定 /^a post$/ 做
pending # 用你希望的代码表达上面的正则表达式
结尾
给定 /^a name is specified$/ do
pending # 用你希望的代码表达上面的正则表达式
结尾
当/^我保存帖子$/时
pending # 用你希望的代码表达上面的正则表达式
结尾
然后/^帖子应该节省$/做
pending # 用你希望的代码表达上面的正则表达式
结尾
耙中止!
命令失败,状态为 (1):[bundle exec /usr/local/bin/ruby -I "/usr/l...]
/usr/local/lib/ruby/1.9.1/rake.rb:993:in `block in sh'
/usr/local/lib/ruby/1.9.1/rake.rb:1008:in `call'
/usr/local/lib/ruby/1.9.1/rake.rb:1008:in `sh'
/usr/local/lib/ruby/1.9.1/rake.rb:1092:in `sh'
/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-0.8.5/lib/cucumber/rake/task.rb:72:in `run'
/usr/local/lib/ruby/gems/1.9.1/gems/cucumber-0.8.5/lib/cucumber/rake/task.rb:142:in `block in define_task'
/usr/local/lib/ruby/1.9.1/rake.rb:634:in `call'
/usr/local/lib/ruby/1.9.1/rake.rb:634:in `block in execute'
/usr/local/lib/ruby/1.9.1/rake.rb:629:in `每个'
/usr/local/lib/ruby/1.9.1/rake.rb:629:在“执行”中
/usr/local/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/usr/local/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites'
/usr/local/lib/ruby/1.9.1/rake.rb:602:in `每个'
/usr/local/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites'
/usr/local/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
/usr/local/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
/usr/local/lib/ruby/1.9.1/rake.rb:581:in `invoke'
/usr/local/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `每个'
/usr/local/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
/usr/local/lib/ruby/1.9.1/rake.rb:2013:in `top_level'
/usr/local/lib/ruby/1.9.1/rake.rb:1992:在“运行”中
/usr/local/bin/rake:31:in `'
尽管有此输出,但我的功能工作正常,当我添加步骤定义并传递它们时,所有更改都会正确显示在控制台中。
这是我的 Gemfile:
组:开发,:测试做
宝石'黄瓜导轨'
gem 'rspec-rails', '>= 2.0.0.beta.22'
宝石“硒”
宝石“薄”
宝石'webrat'
结尾
我想注意,如果我使用 bundle exec cucumber
或 cucumber features/
命令,我不会收到任何错误消息。
这个问题的原因是什么?我该如何解决?
谢谢。
Debian GNU/Linux 5.0.6;
红宝石 1.9.2;
Ruby on Rails 3.0.0;
捆绑器 1.0.0;
黄瓜 0.8.5;
Cucumber-Rails 0.3.2.
【问题讨论】:
【参考方案1】:
我也看到了同样的问题。通过一点搜索,我可以弄清楚这个错误来自哪里,但仍然不知道如何解决它。
问题是“bundle exec ...”shell 调用以状态码“1”退出。这是 rake.rb 脚本的错误,因此它会抛出这些行。看起来这只是某种虚惊。
此外,只有在所有场景都通过时才会发生这种情况。即使有一个失败,您也不会看到此错误。
【讨论】:
如果您已经在源代码中发现了问题,那么您绝对应该将其报告为黄瓜上的错误。 :)
原来是 cucumber.yml 和未定义任务中的 --strict 指定。查看此处打开的错误:rspec.lighthouseapp.com/projects/16211/tickets/… 以上是关于Ruby on Rails。捆绑器。黄瓜。耙中止!命令失败,状态为 (1)的主要内容,如果未能解决你的问题,请参考以下文章
ruby on rails - 问题捆绑安装nokogiri 1.7.2 on ruby on rails 4.x.
Ruby on rails 中的捆绑错误
耙中止! ExecJS::RuntimeError: (execjs):1
ruby on rails 4 - 捆绑安装grape-jbuilder
使用 Ruby On Rails 4.2.5.1 我可以 gem install therubyracer 但捆绑包在 OS X 10.11.1 上失败
耙中止! NameError: uninitialized constant even add :environment to task