我试图通过“黄瓜书”,但黄瓜表现不尽如人意。
我在Windows 7(32位)上,我有理由相信我已经正确安装了Ruby和必要的宝石。
但是,当我运行黄瓜时,我收到以下消息:
WARNING: cannot load such file -- 2.0/gherkin_lexer_en
Couldn't load 2.0/gherkin_lexer_en
The $LOAD_PATH was:
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.2.1/bin/../lib
C:/Ruby200/lib/ruby/gems/2.0.0/gems/gherkin-2.11.6-x86-mingw32/lib
C:/Ruby200/lib/ruby/gems/2.0.0/gems/builder-3.2.0/lib
C:/Ruby200/lib/ruby/gems/2.0.0/gems/diff-lcs-1.2.1/lib
C:/Ruby200/lib/ruby/gems/2.0.0/gems/cucumber-1.2.1/lib
这继续了一下,列出了更多被检查的路径,然后是“恢复到Ruby词法分析器”,并且发现了一条消息“没有找到lexer的en(无法加载此类文件 - -gherkin /词法/ EN)...'
根据它检查的路径,似乎它想要一个' 2.0' ' gherkin-2.11.6-x86-mingw32 / lib'中的文件夹文件夹,显然不存在。但是,有' 1.8'和' 1.9'文件夹似乎有' gherkin_lexer_en'文件(实际上是' gherkin_lexer_en.so')。
作为一个疯狂的猜测,我复制了1.9文件夹,并将其命名为2.0。我并不认为这会奏效,但我认为值得一试。
如何让黄瓜查看我的其中一个文件夹,或者获得一个可以接受的2.0文件夹?
答案 0 :(得分:5)
$ gem install gherkin --platform ruby
转到ruby安装目录中的以下文件夹
{rubyDir}\lib\ruby\gems\2.0.0\gems\gherkin-2.12.2\lib\gherkin
对于你们来说可能是不同的道路
修改*lib/gherkin/c_lexer.rb:7
更改前缀的值如下:
prefix = ''
在以下链接找到答案 https://github.com/cucumber/gherkin/issues/273
回复 mscharley于2014年1月18日发表评论
像魅力一样为我工作..
答案 1 :(得分:2)
在Windows上,您将不得不暂时使用Ruby 1.9。目前尚未发布一个Ruby 2.0版本的小黄瓜。
答案 2 :(得分:-1)
如果你正在使用小黄瓜版本2.12.1,你现在应该可以在Windows上使用带有ruby 2.0的黄瓜。
首先,使用--ignore-dependencies选项安装gherkin-2.12.1。
所需的共振 - 依赖关系选项是,如果不指定它,它将安装json 1.4.X,这是非常旧的版本,无法在ruby 2.0上安装。
此时,您应该可以在ruby 2.0上保存黄瓜,但是您会看到上面的错误消息作为警告消息。这意味着你仍然可以使用黄瓜,虽然你看到了消息。
如果要删除错误,请按照以下步骤操作。
在[ruby installed dir] \ lib \ ruby \ gems \ 2.0.0 \ gems \ gherkin-2.12.1 \ lib上创建[2.0]文件夹(此文件夹包含gherkin_lexer_XX.so)。
将[ruby installed dir] \ lib \ ruby \ gems \ 2.0.0 \ gems \ gherkin-2.12.1 \ lib中的所有内容复制到创建的[2.0]文件夹中(您不需要复制您创建的[2.0]文件夹。