开发新gem时如何添加和打包新功能

问题描述 投票:0回答:1

我刚刚创建了一个名为 maker 的示例 gem。我也在使用RVM。

添加示例用户功能的最新更改出现在此 PR 中。我一直在遵循 Bundler 文档中的此指南来创建新的 gem。

我目前正在尝试通过 irb 使用 gem,当我执行

require maker
时,我收到以下错误:

 :001 > require 'maker'
LoadError: cannot load such file -- maker/user
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/mohnishgj/.rvm/gems/ruby-2.4.1@experiments/gems/maker-0.1.0/lib/maker.rb:2:in `<top (required)>'
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:133:in `require'
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:133:in `rescue in require'
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:40:in `require'
    from (irb):1
    from /Users/mohnishgj/.rvm/rubies/ruby-2.4.1/bin/irb:11:in `<main>'
 :002 >
    

当我导航到安装了

experiments
宝石集的 gem 的位置(即
/Users/mohnishgj/.rvm/gems/ruby-2.4.1@experiments/gems/maker-0.1.0
)时,我清楚地看到 该位置缺少
user.rb
文件。

/Users/mohnishgj/.rvm/gems/ruby-2.4.1@experiments/gems/maker-0.1.0/lib/maker
➜  maker ls
version.rb

每当我想要添加新文件作为 gem 的一部分并希望它能够正常工作时,如何解决这个问题

irb
我是否错误地进行了与 gem 相关的开发的某些部分?请原谅我的无知,我对创造宝石还比较陌生。 我应该如何正确地从源代码进行与 gem 相关的开发?

另外,我可能会遗漏一些东西,但是当我尝试将

Bundler.require(:default, :development)
添加到maker.gemspec(如创建宝石指南中所建议的那样)时,就像

lib = File.expand_path("../lib", __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "maker/version"
Bundler.require(:default, :development)

我遇到了如下错误:

[!] There was an error parsing `Gemfile`:  - [!] There was an error while loading `maker.gemspec`:  - [!] There was an error parsing `Gemfile`:  - [!] There was an error while loading `maker.gemspec`:  - [!] There was an error parsing `Gemfile`:

我可能会错过什么?

ruby rubygems rvm bundler
1个回答
0
投票

这个问题的答案是使用本文中提到的

bundle console
- http://wsmoak.net/2016/07/10/ruby-gem-dev-irb.html

© www.soinside.com 2019 - 2024. All rights reserved.