2012-09-17 3 views
0

rals 3.2.8 애플리케이션을 개발 중입니다. 내 Mac에서 시작하고 그것을 리눅스 머신에 복사했습니다. 리눅스 머신은 다음과 같은 에러 라인을 준다. 레일스 자산 경로가 다른 기계에서 다를 수 있습니다.

couldn't find file 'jquery.ui.all' 

나는 Rails.application.config.assets.paths를 확인하고 내 Mac 및 리눅스에 달라 것을 깨달았다. 내가 뭐 놓친 거 없니?

감사합니다.

=========== 업데이트 ============ 나는 이상한 것을 발견했다. 내 development env와 design env (config/environments/development.rb에서 복사 한)가 동일하더라도 Rails.application.config.assets.paths가 다릅니다.

다음은 내 콘솔에서 가져온 것입니다.

[ssk-MBP]~/dev/test$ r c 
Loading development environment (Rails 3.2.8) 
1.8.7 :001 > Rails.application.config.assets.paths 
=> ["/Users/ssk/dev/dentisusa/app/assets/images", "/Users/ssk/dev/dentisusa/app/assets/javascripts", "/Users/ssk/dev/dentisusa/app/assets/stylesheets", "/Users/ssk/dev/dentisusa/vendor/assets/javascripts", "/Users/ssk/dev/dentisusa/vendor/assets/stylesheets", "/Users/ssk/.rvm/gems/[email protected]/gems/jquery-rails-2.1.2/vendor/assets/javascripts", "/Users/ssk/.rvm/gems/[email protected]/gems/underscore-rails-1.3.1/vendor/assets/javascripts", "/Users/ssk/.rvm/gems/[email protected]/gems/bootstrap-sass-2.1.0.0/vendor/assets/images", "/Users/ssk/.rvm/gems/[email protected]/gems/bootstrap-sass-2.1.0.0/vendor/assets/javascripts", "/Users/ssk/.rvm/gems/[email protected]/gems/bootstrap-sass-2.1.0.0/vendor/assets/stylesheets", "/Users/ssk/.rvm/gems/[email protected]/gems/coffee-rails-3.2.2/lib/assets/javascripts", #<Pathname:/Users/ssk/dev/dentisusa/vendor/bundle/ruby/1.8/gems/jquery-ui-rails-2.0.0/vendor/assets/stylesheets>] 
1.8.7 :002 > exit 
[ssk-MBP]~/dev/test$ r c design 
Loading design environment (Rails 3.2.8) 
1.8.7 :001 > Rails.application.config.assets.paths 
=> ["/Users/ssk/dev/dentisusa/app/assets/images", "/Users/ssk/dev/dentisusa/app/assets/javascripts", "/Users/ssk/dev/dentisusa/app/assets/stylesheets", "/Users/ssk/dev/dentisusa/vendor/assets/javascripts", "/Users/ssk/dev/dentisusa/vendor/assets/stylesheets", "/Users/ssk/.rvm/gems/[email protected]/gems/jquery-rails-2.1.2/vendor/assets/javascripts", #<Pathname:/Users/ssk/dev/dentisusa/vendor/bundle/ruby/1.8/gems/jquery-ui-rails-2.0.0/vendor/assets/stylesheets>] 
1.8.7 :002 > 

내가 뭘 잘못 했니?

샘 자산 경로는 시스템의 운영 체제는 응용 프로그램 구성에 어떤 영향을해야하는 이유를 나는 상상할 수없는 응용 프로그램에 의해 정의되어 있기 때문에

답변

0

문제를 해결하는 방법을 찾았습니다.

설정은/application.rb

if defined?(Bundler) 
    # If you precompile assets before deploying to production, use this line 
    Bundler.require(*Rails.groups(:assets => %w(development test design))) 
    # If you want your assets lazily compiled in production, use this line 
    # Bundler.require(:default, :assets, Rails.env) 
end 

난에 '디자인'을 추가했다.

거의 하루 종일 걸렸습니다.

+0

잘 알고 있으니 답변을 게시 해 주셔서 감사합니다. 조만간 조만간이 프로젝트에 나설 것입니다.) 솔직히 말해서, 자산 파이프 라인이 제 취향에 약간의 마술입니다. –

1

.

명백한 질문에 사과드립니다.하지만 두 컴퓨터에서 동일한 환경을 사용하고 있습니까? (즉, 하나의 제품을 제작하지 않고 다른 제품을 개발하지 않습니까?) 이것이 봄이 떠오르는 유일한 가능성입니다. 당신은 config 디렉토리의 다른 경로에 대해 grep'ing을 시도 할 수 있습니다. (예 : grep strange_asset_path -r config)

+0

대답은 나에게 약간의 확신을줍니다. 사실 env는 같지 않습니다. config/environments/development.rb를 config/environments/design.rb에 복사하여 env를 만들었습니다. 그래서 그것은 동일해야합니다. 나는 계속 노력할 것이다. 감사. –

+0

한가지 차이점은 Mac 레일은 rvm을 사용하고 있으며 Linux 레일은 사용하지 않는다는 것입니다. –

+0

rvm 자체는 보석 버전이 동일하면 별다른 차이가 없어야합니다. 그것들은 내가 생각할 수있는 유일한 두 가지 원인, 즉 Rails의 gem 버전이나 환경 설정이 config /에있다. (또는 설정 config/application.rb가 가능할 것이라고 생각한다.) 마지막으로 생각한 것은'grep -r "config.assets.paths".'를 앱 루트에 추가하십시오. 그러면 구성이 변경 될 수있는 모든 가능한 위치가 명확하게 표시되어야합니다. –

관련 문제