1

JRubyにRailsアプリケーションがあります。実行すると、次のコンテンツrake assets:precomileのみを含むファイルが作成されます。/public/assets/manifest.yml

--- {}
...

どのasstesもプリコンパイルされませんが、これをトレースしようとしてもエラーは発生しません。

tbraun@tbraun-DEBIAN:~/Dokumente/Entwicklung/RubyOnRails/Passbildkartei$ rake assets:precompile --trace
** Invoke environment (first_time)
** Execute environment
** Invoke assets:precompile (first_time)
** Execute assets:precompile
/home/tbraun/.rvm/rubies/jruby-1.6.7.2/bin/jruby /home/tbraun/.rvm/gems/jruby-1.6.7.2/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets --trace
** Invoke environment (first_time)
** Execute environment
** Invoke assets:precompile:all (first_time)
** Execute assets:precompile:all
** Invoke assets:precompile:primary (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment 
** Invoke tmp:cache:clear (first_time)
** Execute tmp:cache:clear
** Execute assets:precompile:primary
** Invoke environment (first_time)
** Execute environment
** Invoke assets:precompile:nondigest (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment 
** Invoke tmp:cache:clear (first_time)
** Execute tmp:cache:clear
** Execute assets:precompile:nondigest

しかし、アセットディレクトリにいくつかの画像、JavaScript、スタイルシートがあります。これを修正するために何ができるかわかりません。

私のJRubyバージョンは次のとおりです。

jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-05-01 26e08ba) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_26) [linux-amd64-java]

そして、これは私が使用している宝石です:

source 'https://rubygems.org'

gem 'rails', '3.2.3'
gem "haml", "~> 3.1.4"
gem "paperclip", "~> 3.0"
gem "will_paginate", "~> 3.0.3"
gem "devise", "~> 2.1.2"
gem "devise_ldap_authenticatable", "~> 0.6.1"

gem 'activerecord-jdbcsqlite3-adapter'
gem 'activerecord-jdbcmysql-adapter'

gem 'jruby-openssl'
gem 'json'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  gem 'therubyrhino'

  gem 'uglifier', '>= 1.0.3'
  gem "haml-rails", "~> 0.3.4"

  gem "warbler", "~> 1.3.5"
end

gem 'jquery-rails'

誰かがこの問題を解決する方法を考えていますか?

4

3 に答える 3

1

実際には、これを追加することで回避できます

config.assets.initialize_on_precompile = false

あなたのapplication.rbへ

于 2012-07-14T19:19:27.577 に答える
1

私は自分で問題を見つけました。データベースにアクセスする必要があるため、が失敗する原因となったのはdevisegemでした。assets:precomileしかし、私の本番データベースにはVPN経由でのみアクセスできます。したがって、asstesをプリコンパイルするときにdeviseを使用するときは、dbにアクセスできることを確認する必要があります。

于 2012-07-14T16:52:12.750 に答える
1

同じ問題がありました。再びdevise宝石。herokuを使用しているため、構成ファイルに有効な本番データベース情報がありませんでした。開発構成をconfig/database.ymlの本番セクションにコピーして、機能させるようにしました。おそらくもっと簡単な方法があります...

于 2012-12-01T19:52:16.647 に答える