質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.49%

  • Ruby

    7907questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

rbenv上でbundle execを使うと、bundlerのbinファイルの読み込みに失敗します。

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 2,292

mitsuru793

score 149

現在Gemを作成しています。その際に、guardでテストを実行しようとするとエラーが起きるようになりました。今までは問題なく実行できていて、何が原因となったかはわかりません。test/以下に~.rbファイルがある場合に下記のエラーが起きます。~.rbファイルには何も記述していなくてもです。この原因、またはヒントなることがあれば、教えていただきたいです。

/Users/mitsuru/.rbenv/versions/2.3.0/bin/bundleの22行目のload Gem.activate_bin_path('bundler', 'bundle', version)からのファイルの読み込みに失敗しています。/Users/mitsuru/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/gemsというディレクトリ自体がありませんでした。

また、Gem.activate_bin_pathの挙動について書いてあるページもわかりませんでした。

どうぞよろしくお願い致します。

❯ bundle exec guard
21:43:56 - INFO - Guard::Test 2.0.5 is running, with Test::Unit 2.5.5!
21:43:56 - INFO - Running all tests
/Users/mitsuru/.rbenv/versions/2.3.0/bin/bundle:22:in `load': cannot load such file -- /Users/mitsuru/.rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/gems/bundler-1.11.2/bin/bundle (LoadError)
        from /Users/mitsuru/.rbenv/versions/2.3.0/bin/bundle:22:in `<main>'
21:43:57 - INFO - Guard is now watching at '/Users/mitsuru/code/myrepository/dig_yaml_front_matter'
[1] guard(main)>

 環境

OS

  • ProductName:    Mac OS X
  • ProductVersion: 10.11.1
  • BuildVersion:   15B42

 その他 

  • zsh 5.2 (x86_64-apple-darwin15.0.0)
  • rbenv 1.0.0
  • ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]

 設定ファイル

/Users/mitsuru/.rbenv/versions/2.3.0/bin/bundle

#!/Users/mitsuru/.rbenv/versions/2.3.0/bin/ruby
#
# This file was generated by RubyGems.
#
# The application 'bundler' is installed as part of a gem, and
# this file is here to facilitate running it.
#

require 'rubygems'

version = ">= 0.a"

if ARGV.first
  str = ARGV.first
  str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
  if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
    version = $1
    ARGV.shift
  end
end

load Gem.activate_bin_path('bundler', 'bundle', version)

Gemfile

source 'https://rubygems.org'

# Specify your gem's dependencies in schema_validator.gemspec
gemspec

Gemfile.lock

PATH
  remote: .
  specs:
    dig_yaml_front_matter (0.1.0)
      front_matter_parser

GEM
  remote: https://rubygems.org/
  specs:
    awesome_print (1.6.1)
    coderay (1.1.1)
    fakefs (0.8.1)
    ffi (1.9.10)
    formatador (0.2.5)
    front_matter_parser (0.0.4)
    guard (2.13.0)
      formatador (>= 0.2.4)
      listen (>= 2.7, <= 4.0)
      lumberjack (~> 1.0)
      nenv (~> 0.1)
      notiffany (~> 0.0)
      pry (>= 0.9.12)
      shellany (~> 0.0)
      thor (>= 0.18.1)
    guard-test (2.0.5)
      guard (~> 2.0)
      test-unit (~> 2.2)
    listen (3.0.6)
      rb-fsevent (>= 0.9.3)
      rb-inotify (>= 0.9.7)
    lumberjack (1.0.10)
    method_source (0.8.2)
    nenv (0.3.0)
    notiffany (0.0.8)
      nenv (~> 0.1)
      shellany (~> 0.0)
    pry (0.10.3)
      coderay (~> 1.1.0)
      method_source (~> 0.8.1)
      slop (~> 3.4)
    rake (10.5.0)
    rb-fsevent (0.9.7)
    rb-inotify (0.9.7)
      ffi (>= 0.5.0)
    shellany (0.0.1)
    slop (3.6.0)
    terminal-notifier (1.6.3)
    terminal-notifier-guard (1.7.0)
    test-unit (2.5.5)
    thor (0.19.1)

PLATFORMS
  ruby

DEPENDENCIES
  awesome_print
  bundler (~> 1.11)
  dig_yaml_front_matter!
  fakefs
  guard
  guard-test (= 2.0.5)
  rake (~> 10.0)
  terminal-notifier
  terminal-notifier-guard

BUNDLED WITH
   1.11.2

Guardfile

guard :test, cmd: "bundle exec test" do
  # Test files
  watch(%r{^test/.+_test\.rb$})
  watch(%r{^lib/(.+)\.rb$}) { |m| "test/lib/#{m[1]}_test.rb" }
  watch('test/test_helper.rb') { "test" }
end
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+1

.bundle/config.vendorを削除して、gemをホームディレクトリにある.rbenvから読み込むようにしたらbundle exec guardを実行しても、エラーが起きないようになりました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

checkベストアンサー

0

思うところで言えば、bundle exec からguardを呼び出して、guardがさらにbundle exec を呼び出しています。
以下をしてみるとヒントが得られるかもしれません。

guardだけで叩いてみる。
bundle installを実行してみて、bundleが動くか試してみる。
フォルダ内で rbenv versionを叩いてみる。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/04/16 06:54

    回答頂き、ありがとうございます。

    `bundle install`と`rbenv version`は問題ありませんでした。

    ```bash
    ❯ rbenv version
    2.3.0 (set by /Users/mitsuru/.rbenv/version)
    ```

    `guard`を叩いた際は、コードは実行されましたが2回も実行されています。警告は`bundle exec`を使うようにということでした。エラーは`test-unit`で起きていたようです。

    ```
    ❯ tree test
    test
    └── hello_test.rb
    ❯ cat test/hello_test.rb
    puts "hello"
    ```

    ```bash
    ❯ guard
    Warning: you have a Gemfile, but you're not using bundler or RUBYGEMS_GEMDEPS
    06:47:34 - INFO - Guard here! It looks like your project has a Gemfile, yet you are running
    > [#] `guard` outside of Bundler. If this is your intent, feel free to ignore this
    > [#] message. Otherwise, consider using `bundle exec guard` to ensure your
    > [#] dependencies are loaded correctly.
    > [#] (You can run `guard` with --no-bundler-warning to get rid of this message.)
    WARN: Unresolved specs during Gem::Specification.reset:
    power_assert (>= 0)
    WARN: Clearing out unresolved specs.
    Please report a bug if this causes problems.
    06:47:34 - INFO - Guard::Test 2.0.7 is running, with Test::Unit 3.1.8!
    06:47:34 - INFO - Running all tests
    hello
    hello
    /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/method_source-0.8.2/test/test_code_helpers.rb:1:in `<top (required)>': uninitialized constant MethodSource (NameError)
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:105:in `require'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:105:in `block in collect_file'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:123:in `add_load_path'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:103:in `collect_file'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:78:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:76:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:76:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:83:in `block in collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:81:in `collect_recursive'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:37:in `block (2 levels) in collect'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:34:in `each'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:34:in `block in collect'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:123:in `add_load_path'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/collector/load.rb:30:in `collect'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/autorunner.rb:94:in `block in <class:AutoRunner>'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/autorunner.rb:400:in `run'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit/autorunner.rb:59:in `run'
    from /Users/mitsuru/code/myrepository/dig_yaml_front_matter/vendor/ruby/2.3.0/gems/test-unit-2.5.5/lib/test/unit.rb:502:in `block (2 levels) in <top (required)>'
    06:47:35 - INFO - Guard is now watching at '/Users/mitsuru/code/myrepository/dig_yaml_front_matter'

    Frame number: 0/0
    [1] guard(main)>
    ```

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.49%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Ruby

    7907questions

    Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。