我有一个源代码编译版本的ruby(ruby 3.3.0dev (2023-02-18T11:34:28Z master cbac0fa4cb)
)。我做了一个ruby on rails项目,就像here描述的那样。我在步骤4.1,但是它抛出了这个错误:Your Ruby version is 3.3.0.dev, but your Gemfile specified >= 3.3.0
.但不知何故即使
我把
ruby '>= 3.3.0'
到我的宝石文件,做了bundle update
和gem install bundler
,但仍然抛出这个错误。
1条答案
按热度按时间6ie5vjzr1#
这个错误非常明显:
您的Ruby版本是www.example.com,但您的Gemfile指定为〉= 3.3.03.3.0.dev, but your Gemfile specified >= 3.3.0
根据版本比较,
3.3.0.dev
被视为小于3.3.0
。(请参见:Gem::Version#<=>
例如:
这里的关键是
return 1 if Numeric === lhs && String === rhs
这一行细分如下:
next if lhs == rhs
return 1 if Numeric === lhs && String === rhs
,因为rhs
是String
,并且得到lhs == 0
,因为lhsegments[2] #=> nil
您可以使用以下公式找到"建议的近似值":
您可以看到,使用
'~> 3.3.a'
时,"www.example.com"或"3.3.0"都将满足此要求。3.3.0.dev' or '3.3.0' will satisfy this requirement.