Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rubygems 捆绑机可以';t解析';手动安装和删除_Rubygems_Jekyll_Bundler - Fatal编程技术网

Rubygems 捆绑机可以';t解析';手动安装和删除

Rubygems 捆绑机可以';t解析';手动安装和删除,rubygems,jekyll,bundler,Rubygems,Jekyll,Bundler,我绝对没有写过任何Ruby程序。我正在用Jekyll建立我的静态博客 我通过捆绑安装安装了Gemfile中的所有内容。我的文件如下所示: source "https://rubygems.org" gem "github-pages" group :jekyll-plugins do gem "octopress-minify-html" end octopress插件的一个依赖项是uglifier 2.7.2,它在第一次bundle install调用中正确安装 后来,当我尝试另一

我绝对没有写过任何Ruby程序。我正在用Jekyll建立我的静态博客

我通过
捆绑安装
安装了Gemfile中的所有内容。我的文件如下所示:

source "https://rubygems.org"
gem "github-pages"

group :jekyll-plugins do
    gem "octopress-minify-html"
end
octopress插件的一个依赖项是uglifier 2.7.2,它在第一次
bundle install
调用中正确安装

后来,当我尝试另一个依赖于其他版本的uglifier的插件时,我通过安装了uglifier

gem install uglifier
在此之前,我与
gem
一起安装的唯一软件包是Bundler,其他一切都是通过
bundle install
完成的。上面的命令安装了uglifier 4.1.9,这后来在使用Jekyll构建时导致了一些问题

但我似乎无法将丑陋还原为2.7.2。Bundler一直在解决octopress插件对uglifier 4.1.9(不兼容)的依赖。我尝试了
sudo bundle clean--force
sudo gem uninstall--all
,删除
~/.bundle
~/.gem
并重新开始,但Bundler仍然安装了uglifier 4.1.9作为依赖项

我在一个新的虚拟机上尝试了整个过程,并从
apt install ruby dev
开始,这次Bundler正确地将依赖关系解析为2.7.2,我能够构建我的站点。它还正确地解决了Travis CI的问题

问题:如何让Bundler忘记uglifier 4.1.9并停止我机器上的错误依赖解析


注意:通过删除整个WD并从GitHub重新克隆,工作目录保持干净,因此它在不同环境中保持一致。

请尝试以下操作之一:

  • Gemfile
    的上下文中运行
    jekyll
    命令:

    bundle exec jekyll build
    
  • 重新对齐锁定文件,然后生成:

    一,。运行
    包更新

    二,。运行bundle exec jekyll build

  • 重新生成锁文件,然后生成:

    一,。删除
    Gemfile.lock

    二,。运行bundle exec jekyll build
  • 我已经试过了1和3(我应该说明这一点),但2对我来说似乎是新的,我会稍后再尝试。