" lib"的常规目的是什么? Ruby项目中的目录?

时间:2017-11-20 23:03:06

标签: ruby rubygems naming

拿这个红宝石宝石:https://github.com/ai/autoprefixer-rails

宝石的结构包括" lib"," spec"和"供应商"目录,以及根目录中的一些gemfile。

名为" lib"的目录究竟是什么目的?在红宝石宝石?

它看起来像" lib"包含gem提供的所有ruby代码。那么" lib"是指"构成图书馆的源代码文件?" (很难说" lib"意思是"图书馆,"因为可以说宝石文件是"图书馆的一部分,"也是如此。 )或者它意味着什么呢?并且在任何地方定义的ruby gems中的目录名称的含义是什么?或者目录命名完全是任意的吗?

我正在尝试确定名称" lib"我开始写自己的宝石时有任何特别的意义。我想知道,因为如果它没有,我可能想选择一个不同的名字。

1 个答案:

答案 0 :(得分:0)

默认"需要路径,"即,当激活gem时默认将其添加到$ LOAD_PATH的目录是" lib"。请参阅rubygems specification

  

REQUIRE_PATHS=(val)

     

当激活此gem时,gem中的路径将添加到$LOAD_PATH。如果   您有一个扩展程序,您不需要将"ext"添加到require   在路径中,扩展构建过程会将扩展文件复制到   “lib”给你。

     

默认值为"lib"

     

用法:

# If all library files are in the root directory...
spec.require_paths = ['.']

这个名称被选为默认值意味着它也是一个很好的默认命名决策,可以避免额外的配置并帮助新手进入gem。

相关问题