Build后,GEM中缺少文件[英] Missing File in Gem after Build

本文是小编为大家收集整理的关于Build后,GEM中缺少文件的处理方法,想解了Build后,GEM中缺少文件的问题怎么解决?Build后,GEM中缺少文件问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

tl; dr:

不在现有git存储库中运行捆绑包.没有任何错误消息会发生奇怪的事情.

原始问题:

我通过调整本教程中的步骤:

http://net.tutsplus.com/tutorials/ruby/gem-creation-with-bundler/

作为最后一步,我运行了gem build .gemspec

这取得了成功,但是当我安装创业板时,我找到了关键文件,其中包含我的代码的那个,不是在宝石中.同一(lib)目录"Version.rb"中的另一个文件确实存在于GEM中.

我不知道如何开始调试...... Bundler/Gem Build如何决定在GEM中包含哪些文件?

编辑:

我的工作流程是:

gem build <project_name>.gemspec
gem unpack <project_name>
=> confirm file does not exist in <unpacked>/lib/

gem install <project name>
=> confirm file structure in ~/home/stefan/.rvm/... contains gem, but does not contain desired file

编辑2/分辨率:

我终于能够通过将所有代码提交到远程存储库,创建一个干净的克隆,构建宝石来实现这一工作.新宝石包括所有必需的文件.

一些历史......我最初创建了代码并在考虑制造宝石之前提交它(这是我的第一个宝石).然后,我使用捆绑内部原始存储库,这没有抱怨,但可能是奇怪的原因.

推荐答案

Bundler为您提供的一个,它将启动本地Git Repo以版本 - 管理您的GEM代码.检查您已在git中添加了文件

git add lib/gem_name/missing_file.rb

Bundler生成的宝石在内部使用Git以跟踪GEM的源文件的"成员资格".您可以在.gemspec中看到它,其中它使用反响来调用git并生成文件列表:

gem.files         = `git ls-files`.split($/)

注意事项也意味着您应该注意在.gitignore

中列出的内容

本文地址:https://www.itbaoku.cn/post/786683.html