복붙노트

[RUBY-ON-RAILS] "빈은 / 레일 : 없음 같은 파일 또는 디렉터리"Heroku가에 / 루비 2 개 레일 4w를

RUBY-ON-RAILS

"빈은 / 레일 : 없음 같은 파일 또는 디렉터리"Heroku가에 / 루비 2 개 레일 4w를

레일 튜토리얼에 레일을 마이클 하틀의 루비의 4 베타 버전을 다음과 같은 동안, 내 응용 프로그램은 Heroku가에서 시작되지 만, 잘 로컬 번들 간부는 서버를 레일로 실행됩니다. 검사에게 Heroku는 -t 다음과 같은 오류를 보여 로그 :

$ heroku[web.1]: State changed from crashed to starting
$ heroku[web.1]: Starting process with command `bin/rails server 
-p 33847 -e $RAILS_ENV`
$ app[web.1]: bash: bin/rails: No such file or directory
$ heroku[web.1]: Process exited with status 127
$ heroku[web.1]: State changed from starting to crashed
$ heroku[web.1]: Error R99 (Platform error) -> Failed to launch the 
dyno within 10 seconds
$ heroku[web.1]: Stopping process with SIGKILL

내가 Heroku가 떠들썩한 파티를 실행하고 bin 디렉토리를 선택하면, 나는이 실행 레일이없는 것을 알 수 있습니다 :

~$ ls bin
erb  gem  irb  node rdoc  ri  ruby  testrb

어떻게 내가 잘못을 한거야? 나는 정확히 튜토리얼을 따라 갔다.

해결법

  1. ==============================

    1.나는 레일 4.0.0로 업그레이드하기 때문에 나는이 문제를 가지고 있었다

    나는 레일 4.0.0로 업그레이드하기 때문에 나는이 문제를 가지고 있었다

    이 명령을 실행

    rake rails:update:bin
    

    당신은 추가 정보를 원하시면 여기를 갈 수 있습니다 https://devcenter.heroku.com/articles/rails4

  2. ==============================

    2.조금이 고민 후, 나는 내 레일 4 프로젝트는 내가 복제 한 일부 오래된 레일 3 개 프로젝트와는 달리, A / 빈 디렉토리를 한 것으로 나타났습니다. / 빈 3 개 파일, 번들, 레일, 그리고 레이크을 포함,하지만 난 내 글로벌 .gitignore 파일에 빈 있었기 때문에 이들에게 Heroku에 그것을 만들기되지 않았다.

    조금이 고민 후, 나는 내 레일 4 프로젝트는 내가 복제 한 일부 오래된 레일 3 개 프로젝트와는 달리, A / 빈 디렉토리를 한 것으로 나타났습니다. / 빈 3 개 파일, 번들, 레일, 그리고 레이크을 포함,하지만 난 내 글로벌 .gitignore 파일에 빈 있었기 때문에 이들에게 Heroku에 그것을 만들기되지 않았다.

    이것은 당신이 망할 놈의 다른 언어 (자바, 등)와 함께 작업하는 경우 매우 일반적인 그래서이 문제를 해결하려면, 규칙을 무시하는 것입니다 :

  3. ==============================

    3.단계 :

    단계 :

  4. ==============================

    4.갱신 : 내 ~ / 빈 디렉토리에 대한 사용 권한이 레이크 레일을 실행 644 대신 755을했기 때문에 나는이 문제를 가지고 빈을 로컬 후 변경 사항이 문제를 해결 밀어 (맥 / * nix에서 스크립트에).

    갱신 : 내 ~ / 빈 디렉토리에 대한 사용 권한이 레이크 레일을 실행 644 대신 755을했기 때문에 나는이 문제를 가지고 빈을 로컬 후 변경 사항이 문제를 해결 밀어 (맥 / * nix에서 스크립트에).

  5. ==============================

    5.우리가 한 다음 내 응용 프로그램 / 스크립트 / 레일 파일에 복사, 플러스 RVM / 루비 / 빈 아래에서 번들 및 레이크 파일을 만든 후 다음을 추가, 그래서 우리는 4 응용 프로그램 우리의 레일에서 MyApp를 / bin 디렉토리가 없었어요 자식에 대한 환매 특약에와 것은 Heroku가에 밀려 모두 잘했다.

    우리가 한 다음 내 응용 프로그램 / 스크립트 / 레일 파일에 복사, 플러스 RVM / 루비 / 빈 아래에서 번들 및 레이크 파일을 만든 후 다음을 추가, 그래서 우리는 4 응용 프로그램 우리의 레일에서 MyApp를 / bin 디렉토리가 없었어요 자식에 대한 환매 특약에와 것은 Heroku가에 밀려 모두 잘했다.

  6. ==============================

    6.나는 당신이 한 바로 그 같은 문제가 없었다. 문제는 bin 폴더가 Heroku가 저장소에 밀어 적이 있다는 사실에 거짓말.

    나는 당신이 한 바로 그 같은 문제가 없었다. 문제는 bin 폴더가 Heroku가 저장소에 밀어 적이 있다는 사실에 거짓말.

    내가보고,보고,하고 나는 빈 / 폴더에 대한 .gitignore 파일에 어떤 규칙이 없었다 다시 보았다 ...

    그런 고통과 고뇌를 많이 후, 나는 (왜 주님, 왜?) 몇 달 내 모든 저장소의 모든 빈 폴더를 무시합니다 글로벌 .gitignore을 만들었다 전에 깨달았다.

    나는 세계 .gitignore을 삭제하고, 모든 벌금을했다.

  7. ==============================

    7.@Ryan 테일러가 말했듯이, 빈 작품 : 업데이트 : 나는 레이크 레일을 실행 확인할 수 있습니다.

    @Ryan 테일러가 말했듯이, 빈 작품 : 업데이트 : 나는 레이크 레일을 실행 확인할 수 있습니다.

    나는 원래 Windows에서이 레일 응용 프로그램을 생성하기 때문에이 문제가 있다고 생각. 리눅스가 나를 위해 해결에 위의 명령을 실행합니다.

    또한, 개발을위한 윈도우에서 리눅스로 변경, 그것은 Gemfile.lock 파일을 삭제 및 Windows 특정 보석없이 다시 생성하기 위해 설치 번들 실행하는 좋은 아이디어가 표시됩니다.

  8. from https://stackoverflow.com/questions/17583439/bin-rails-no-such-file-or-directory-w-ruby-2-rails-4-on-heroku by cc-by-sa and MIT license