How to debug Middleman 3 gem installation issues o

2019-08-02 15:12发布

问题:

I have installed Middleman 3.1.5 as described on my Windows 8 Machnine along with Ruby using rubyinstaller-2.0.0-p247.exe and followed the steps to get started with success. I am now building my first site with some success (coding some pages, starting the server, building the site) but when I try to use some advanced third party components like middleman-navigation or middleman-deploy I seem to hit a wall. At first I thought of a mistake by myself but as more and more things seem to be buggy I want to figure out what is wrong with my setup or at least confirm nothing is.

Some example output that seems buggy to me:

$ middleman help
WARN: Unresolved specs during Gem::Specification.reset:
  rack (>= 1.0, >= 1.4.5)
  thor (< 2.0, >= 0.15.2)
  activesupport (~> 3.2.6)
  listen (~> 1.2.2)
  i18n (~> 0.6.1)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
Tasks:
...

When i try to install middleman-deploy as described, adding gem "middleman-deploy" to my Gemfile and run bundle install there is no indication that anything changed:

$ bundle install
Using i18n (0.6.5)
Using multi_json (1.8.0)
Using activesupport (3.2.14)
Using chunky_png (1.2.8)
Using coffee-script-source (1.6.3)
Using execjs (1.4.0)
Using coffee-script (2.2.0)
Using fssm (0.2.10)
Using sass (3.2.10)
Using compass (0.12.2)
Using eventmachine (1.0.3)
Using http_parser.rb (0.5.3)
Using em-websocket (0.5.0)
Using ffi (1.9.0)
Using tilt (1.3.7)
Using haml (4.0.3)
Using hike (1.2.3)
Using kramdown (1.1.0)
Using rb-fsevent (0.9.3)
Using rb-inotify (0.9.2)
Using rb-kqueue (0.2.0)
Using listen (1.2.3)
Using bundler (1.3.5)
Using rack (1.5.2)
Using rack-test (0.6.2)
Using thor (0.18.1)
Using middleman-core (3.1.5)
Using middleman-more (3.1.5)
Using sprockets (2.10.0)
Using sprockets-helpers (1.0.1)
Using sprockets-sass (1.0.1)
Using middleman-sprockets (3.1.4)
Using uglifier (2.1.2)
Using middleman (3.1.5)
Using rack-livereload (0.3.15)
Using middleman-livereload (3.1.0)
Using wdm (0.1.0)
Your bundle is complete!
Use `bundle show [gemname]` to see where a bundled gem is installed.

I then add a configuration to config.rb and try to use the gem without success:

$ middleman deploy
WARN: Unresolved specs during Gem::Specification.reset:
      rack (>= 1.0, >= 1.4.5)
      thor (< 2.0, >= 0.15.2)
      multi_json (~> 1.0)
      rb-inotify (>= 0.9)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.
There's no 'deploy' command for Middleman. Try 'middleman help' for a list of commands.

Please help me to narrow down the cause of these issues.

回答1:

I had a similar WARN: Unresolved specs during Gem::Specification.reset: message when I did middleman build I'm on a Mac using rvm with ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.3.0]. I found an issue post on GitHub with a similar WARN and the fix was to run gem regenerate_binstubs. It cleared the WARN for me. I'm not sure exactly what that does but it clears up a few issues with rubygems-bundler.