2011-09-02 4 views
3

난 레일 애플 리케이션을 구축의 첫 부분에있어 그리고 난 명령을Rails 서버 명령이 작동하지 않습니다 (다른 명령들도 마찬가지 임).

rails server 

, 또는 정말 다른 레일 명령을 작동시킬 수 없습니다. 레일 명령을 시도 할 때마다 다음과 같은 도움말 화면이 표시됩니다.

$rails server 
Usage: 
    rails new APP_PATH [options] 

Options: 
-r, [--ruby=PATH]    # Path to the Ruby binary of your choice         # Default: /home/sgallagher/.rvm/rubies/ruby-1.9.2- p290/bin/ruby 
-b, [--builder=BUILDER]  # Path to a application builder (can be a filesystem path or URL) 
-m, [--template=TEMPLATE]  # Path to an application template (can be a filesystem path or URL) 
[--skip-gemfile]   # Don't create a Gemfile 
     [--skip-bundle]   # Don't run bundle install 
    -G, [--skip-git]    # Skip Git ignores and keeps 

등 (어떤 명령을 입력했는지 상관없이 동일한 "레일 새"명령을 제공합니다) ...

내 시스템에서 누락 된 항목이나 이러한 명령이 응답하지 않는 이유에 대한 아이디어가 있습니까? 감사합니다

추신 또 다른 특이한 점은 처음에이 애플리케이션을 만들 때 다음과 같은 명령을 사용했다는 것입니다.

rails new first_app 

실제로 두 개의 앱이 생성되었습니다. 하나는 'new'이고 다른 하나는 'first_app'입니다. 또한 기본 Gemfile도 만들지 않았습니다.

레일 3.1.0 및 루비 1.9.2를 실행 중입니다. 우분투 10.04에서.

+1

나는이 문제를 가지고 있었다. 번들 exec 레일즈 서버가 나를 위해 일했다. –

답변

4

rails -vwhich rails을 실행 해보십시오.

rvm (사용하지 않을 경우)을 강력히 추천합니다. 도로 아래의 문제를 피할 수 있으며 설치가 쉽습니다!

그것은 여전히 ​​시스템 레일을 사용하려고하는 것이 가능 EDIT.

rvm use 1.9.2gem install rails 아니요, sudo입니다. 그게 작동하는지 확인하십시오. RVM은 내 프로필을 사용하여 모든 보석을 저장합니다. 추측하면 rails을 입력하면 시스템 하나가 사용됩니다. 이를 확인하려면 which rails을 입력하면 ~/.rvm/...에 속하지 않습니다.

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

+0

실제로 rvm을 사용하고 있습니다. (방금 어제 설치 했었지만) 몇 달 전에 Ruby 1.8.8을 사용 했었습니다. , rvm으로의 전환이 내가보고 있었던 이상과 관련이 있는지 궁금합니다 ... –

+0

위의 편집하십시오. RVM으로 전환하면 RVM은 원하는 루비 버전마다 고유 한 젬 캐시를 유지합니다.즉, 이전에 가지고 있던 모든 보석을 적절한 RVM 루비로 다시 설치해야합니다. 그렇지 않으면 인식하지 못할 것입니다. 이렇게 할 때'sudo gem install'을 사용하지 않으려는 경우가 대부분입니다. 왜냐하면'sudo gem install'은 루비의 시스템 설치에 설치하기 때문입니다 ('root'이기 때문에). 간단히'gem install'을하면 프로파일과 적절한 rvm 안에 유지됩니다. –

+0

나는 질문을 게시하기 전에 '어느 선로'를 달렸고 당신 말이 맞습니다. 그것은 rvm 경로가 아니 었습니다. 나는 sudo에서 모든 보석을 가지고 있고 그 다음에 로컬 보석을 거의 가지고 있지 않기 때문에 조금 혼란 스럽다. 그리고 나는 나의 시스템이 보석을 얻을 곳이 어디인지에 대해 확신 할 수 없다. 나는 이제 막 체크했다. 실제로 rvm 경로에서오고 현재 잘 작동합니다 (예외적으로 node.js 젬을 추가하여 webrick을 작동시켜야합니다). 고마워, 크리스티안. –

1

이전 버전의 레일스를 사용하고 계신 것으로 보입니다.

나는 당신의 경로를 사용하고 생각하지 않는다, 당신은 레일 3.1.0을 설치하지만 같은 forresty 언급 한 수

+0

나는 실제로 최근에 생각한 레일 3.1.0을 사용하고 있었다. 멀리, 왜 그렇게 확신 할 수 없습니까? –

+0

레일즈 3.1은 애셋을 컴파일하기 위해 자바 스크립트 엔진이 필요하지만 궁극적으로 제대로 작동하도록 node.js를 설치해야합니다. 그것은 새롭고 왜 처음에 서버를 시작하기 전에 node.js 또는 therubyracer를 설치해야만하는 이유입니까? –

14

난 그냥이 문제가되었다 있는지 확인하십시오. '레일 서버'명령을 실행할 때마다 실제로 레일 응용 프로그램의 디렉토리에 있는지 확인하십시오. 나는 그 직위에 있지 않았다. 멍청한 실수는 있지만 ...

관련 문제