首页 > 解决方案 > Bundler 正在弃用捆绑控制台以支持 bin/console。谁能更清楚地说明 bin/console 应该如何工作?

问题描述

我有一个严重依赖于bundle console. 没有什么特别或花哨的,只是一个包含由 Gemfile 定义的一组 gem 的交互式控制台。我们在开发过程中经常使用控制台。

目前,当我运行命令时,我收到以下弃用消息:

[已弃用] 捆绑控制台将替换为bin/console生成的bundle gem <name>

捆绑器文档中挖掘我发现了以下解释:

  • bundle console被删除并替换为bin/console

随着时间的推移,我们发现bundle console很难维护,因为每个用户都希望为其添加自己的特定调整。为了简化维护并减少自行车脱落讨论,我们正在删除该bundle console命令,转而支持bin/console由 on gem generation 创建的脚本bundle gem,用户可以根据自己的需要进行调整。

有知识的人可以提供更详细的解释吗?该 gem 当前没有bin目录。我很高兴制作一个,我只是不确定文件中应该包含什么。bundle gem按照上述说明运行会引发错误(如预期的那样)。

标签: ruby-on-railsrubyrubygemsbundler

解决方案


这是在以下位置生成的文件bin/console

#!/usr/bin/env ruby

require "bundler/setup"
require "(your gem name here)"

# You can add fixtures and/or initialization code here to make experimenting
# with your gem easier. You can also use a different console, if you like.

# (If you use this, don't forget to add pry to your Gemfile!)
# require "pry"
# Pry.start

require "irb"
IRB.start(__FILE__)

您可以在 ruby​​gems GitHub 存储库中查看该模板。


推荐阅读