John Dough
John Dough

Reputation: 125

Rails ActionView Template Error No Such File to Load (SASS) on Production Server

I'm trying to launch my Rails app in Production but it doesn't work and fails to launch with the following error (it runs fine in Development):

ActionView::Template::Eror (no such file to load -- sass in (/.../app/assets/stylesheets/file.css.scss)):

13: ...
14: <%= stylesheet_link_tag "application", media => "all" %>
15: ...

app/views/layouts/application.html.erb: 14:in '_app_views_layouts_application_html_erb'

I looked at this StackOverflow post: Rails Error In Production, may due to link_tag and precompilation and tried installing the gem 'therubyracer' but once I do that and try to bundle install, it fails while trying to install the gem libv8 (An error occurred while installing libv8 (3.16.14.3), and bundler cannot continue).

Relevant parts of my Gemfile if it helps:

gem 'rails', '3.2.12'
gem 'activerecord-jdbc-adapter', "1.2.2"
gem 'activerecord-jdbcpostgresql-adapter', '1.2.1'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
end

gem 'therubyrhino'
gem 'jquery-rails', '2.2.1'
gem 'less-rails', '2.3.3'
gem 'rubyzip', '0.9.9'

The production part of my config/database.yml file (I'm using PostgreSQL, don't know if that's relevant):

production:
  adapter: jdbc
  jndi: jdbc/appname
  database: appname
  user: appname
  password: appname
  host: <ip address>

I'm very confused about how to proceed and any help would be appreciated.

Note: I create a .war file using warbler and then try to launch it via GlassFish

Edit: My application.css file is:

/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
 * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the top of the
 * compiled file, but it's generally better to create a new file per style scope.
 *
 *= require_self
 *= require_tree .
 *= require bootstrap-datetimepicker
 *= require bootstrap-select.min
 */

Upvotes: 1

Views: 588

Answers (0)

Related Questions