ruby 如果Bundler出现在我的宝石列表中,它怎么会不活动呢?

6yoyoihd  于 2022-11-04  发布在  Ruby
关注(0)|答案(1)|浏览(105)

我正在尝试安装这个Rails项目(https://github.com/mjohnson324/MockDoc/blob/master/docs/setup.md
运行“bundle install”时,我收到以下错误:

Traceback (most recent call last):
    2: from /usr/bin/bundle:23:in `<main>'
    1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:302:in `activate_bin_path'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:283:in `find_spec_for_exe': Could not find 'bundler' (2.0.2) required by your /Users/michaelkoch/projects/MockDoc-master/Gemfile.lock. (Gem::GemNotFoundException)
To update to the latest version installed on your system, run `bundle update --bundler`.
To install the missing version, run `gem install bundler:2.0.2`

所以我运行了'gem install bundler:2.0.2',安装似乎可以工作了。

Successfully installed bundler-2.0.2
Parsing documentation for bundler-2.0.2
Done installing documentation for bundler after 2 seconds
1 gem installed

如果我运行gem list,我会看到下面的行:bundler (2.1.4, 2.0.2)
如果我再次运行bundle install命令,我会得到相同的原始错误,就像没有安装bundler一样。
我正在使用rbenv来管理版本,正如Github项目所指出的那样。我很感谢你的帮助。

kzipqqlq

kzipqqlq1#

我在我的MacBook M1系统上遇到了一个类似的问题,而试图使用2.1.4为我的项目。我试图删除gemfile.lock,并通过运行gem install bundler:2.1.4,然后bundle install重新安装由@Giuseppe Schembri建议,但这并没有解决我的问题。
我导航到根目录,并尝试通过运行bundler version来检查全局版本,结果-

Bundler version 2.3.22 ([date] commit [commit_id])

我再次导航到我的项目目录,再次运行bundler version,得到-

Bundler version 2.1.4 ([date] commit [commit_id])

新闻快报:我的项目安装了bundler 2.1.4。
那么为什么错误仍然存在?
很显然,我的.git〉钩子中有一个post-checkout文件,它试图执行bundler exec pod install,但失败了。后来我意识到,它找不到bundler的路径,所以我通过运行type bundler得到了路径,它返回

bundler is /Users/myUserName/.rbenv/shims/bundler

然后,我使用了/Users/myUserName/.rbenv/shims/bundler exec pod安装,而不是bundler exec pod安装。
在M1上的较新版本的操作系统中,可能会发生这种情况。

相关问题