Sprockets::FileNotFound: couldn't find file 'jquery' with type 'application/javascript' Heroku in Rails App

12,549

Remove gems jquery-rails, jquery-ui-rails, Rails 5.1 use rails-ujs by default and not using jquery. Use yarn for install jquery - yarn add jquery. Yarn

Share:
12,549
Admin
Author by

Admin

Updated on June 13, 2022

Comments

  • Admin
    Admin almost 2 years

    I'm trying to deploy my rails app to heroku but push to heroku is rejected due to: "Sprockets::FileNotFound: couldn't find file 'jquery' with type 'application/javascript'". I've also attached a screenshot of the error

    This is my gemfile:

    source 'https://rubygems.org'
    
    git_source(:github) do |repo_name|
      repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
      "https://github.com/#{repo_name}.git"
    end
    
    
    # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
    gem 'rails', '~> 5.1.2'
    gem 'jquery-rails'
    gem 'jquery-ui-rails'
    
    # Use postgresql as the database for Active Record
    gem 'pg', '~> 0.18'
    # Use Puma as the app server
    gem 'puma', '~> 3.7'
    # Use SCSS for stylesheets
    gem 'sass-rails', '~> 5.0'
    # Use Uglifier as compressor for JavaScript assets
    gem 'uglifier', '>= 1.3.0'
    # See https://github.com/rails/execjs#readme for more supported runtimes
    gem 'therubyracer', platforms: :ruby
    
    # Use CoffeeScript for .coffee assets and views
    gem 'coffee-rails', '~> 4.2'
    # Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
    gem 'turbolinks', '~> 5'
    # Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
    gem 'jbuilder', '~> 2.5'
    # Use Redis adapter to run Action Cable in production
    # gem 'redis', '~> 3.0'
    # Use ActiveModel has_secure_password
    # gem 'bcrypt', '~> 3.1.7'
    
    # Use Capistrano for deployment
    # gem 'capistrano-rails', group: :development
    
    gem 'bootstrap', '~> 4.0.0.alpha6'
    #Tooltips and popovers depend on tether for positioning
    source 'https://rails-assets.org' do
      gem 'rails-assets-tether', '>= 1.3.3'
    end
    
    gem 'devise'
    gem 'simple_form'
    gem 'carrierwave', '~> 1.0'
    
    group :development, :test do
      # Call 'byebug' anywhere in the code to stop execution and get a debugger console
      gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
      # Adds support for Capybara system testing and selenium driver
      gem 'capybara', '~> 2.13'
      gem 'selenium-webdriver'
      gem 'pry-rails'
    end
    
    group :development do
      # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
      gem 'web-console', '>= 3.3.0'
      gem 'listen', '>= 3.0.5', '< 3.2'
      # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
      gem 'spring'
      gem 'spring-watcher-listen', '~> 2.0.0'
    end
    
    # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
    gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
    

    My application.js looks like this

    //= require jquery
    //= require jquery_ujs
    //= require jquery-ui
    //= require tether
    //= require bootstrap-sprockets
    //= require rails-ujs
    //= require turbolinks
    //= require_tree 
    

    And my application.scss looks like this:

     *= require jquery-ui
     *= require_tree .
     *= require_self
     */
     @import "bootstrap";
    

    The application runs fine locally but I can't seem to push to heroku. I've already tried rake assets:precompile and committing the changes before pushing to heroku but still no luck.