Ruby 如何解决黄瓜问题';can';t加载这样的文件';警告
我正试着看完《黄瓜书》,但黄瓜的表现并不像预期的那样 我使用的是Windows7(32位),我有理由相信我已经正确安装了Ruby和必要的gems 但是,当我运行cucumber时,会收到以下消息:Ruby 如何解决黄瓜问题';can';t加载这样的文件';警告,ruby,windows,cucumber,gherkin,Ruby,Windows,Cucumber,Gherkin,我正试着看完《黄瓜书》,但黄瓜的表现并不像预期的那样 我使用的是Windows7(32位),我有理由相信我已经正确安装了Ruby和必要的gems 但是,当我运行cucumber时,会收到以下消息: 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/cucum
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找到lexer(无法加载这样的文件--gherkin/lexer/en)
根据它正在检查的路径,它似乎希望在“gherkin-2.11.6-x86-mingw32/lib”文件夹中有一个“2.0”文件夹,该文件夹显然不存在。然而,有些“1.8”和“1.9”文件夹似乎有“gherkin_lexer_en”文件(实际上是“gherkin_lexer_en.so”)
出于猜测,我复制了1.9文件夹,并将其命名为2.0。我真的没想到这会奏效,但我觉得值得一试
如何让cucumber在我拥有的某个文件夹中查找,或者选择将其接受的2.0文件夹放置到位?在Windows上,您将不得不暂时使用Ruby 1.9。目前还没有发布gherkin的Ruby 2.0版本。如果您使用的是gherkin 2.12.1版,您现在应该可以在Windows上使用cucumber和Ruby 2.0 首先,使用--ignoredependencies选项安装gherkin-2.12.1 reson--ignore dependencies选项是必需的,它将安装json 1.4.X,这是一个非常旧的版本,无法在ruby 2.0上安装 此时,您应该能够在ruby 2.0上使用ruby cucumber,但您将看到上面的错误消息作为警告消息。这意味着您仍然可以使用cucumber,尽管您看到了该消息 如果要删除错误,请执行以下步骤
$gem安装小黄瓜——平台ruby
转到ruby安装目录下的文件夹
{rubyDir}\lib\ruby\gems\2.0.0\gems\gherkin-2.12.2\lib\gherkin
对你们来说可能是另一条路
修改*lib/gherkin/c_lexer.rb:7
更改前缀的值,如下所示:
prefix=''
在下面的链接中找到答案
答复
mscharley于2014年1月18日发表评论
像魅力一样为我工作。好的。我想我会那么做的。谢谢,有最新消息吗?是否支持Ruby 2.0?就我所见,似乎是这样,但我在黄瓜2.11.7中仍然有同样的错误。我刚刚安装了Ruby 2.0.0,并再次尝试了黄瓜宝石。我仍然得到相同的错误。看,我正在使用Ruby 1.9,但仍然得到相同的问题。小黄瓜正在被下载,但不是在里面。bundle,它要去一个基地。这种行为的原因可能是什么?首先,我必须用
gem卸载gherkin--force卸载以前的cucumber版本