Stimulus controller dont work at all on heroku, rails 7

in development everything work fine, but in heroku it don’t work. I add to HTML as wrote in stimulus docs: ``

Greet
``` and add to hello_controller.js in connect() ``` console.log("it works") ``` and this don't work on heroku(msg in console didn't appear also). Importmap, index.js, application.js and manifest.js seems good:

manifest.js:

//= link_tree ../images
//= link_directory ../stylesheets .css
//= link_tree ../../javascript .js
//= link_tree ../../../vendor/javascript .js
//= link custom.css

index.js:

// Import and register all your controllers from the importmap under controllers/*

import { application } from "controllers/application"

// Eager load all controllers defined in the import map under controllers/**/*_controller
import { eagerLoadControllersFrom } from "@hotwired/stimulus-loading"
eagerLoadControllersFrom("controllers", application)

// Lazy load controllers as they appear in the DOM (remember not to preload controllers in import map!)
// import { lazyLoadControllersFrom } from "@hotwired/stimulus-loading"
// lazyLoadControllersFrom("controllers", application)

application.js:

import { Application } from "@hotwired/stimulus"

const application = Application.start()

// Configure Stimulus development experience
application.debug = false
window.Stimulus   = application
export { application }

importmap.rb:

pin "application", preload: true
pin "@hotwired/turbo-rails", to: "turbo.min.js", preload: true
pin "@hotwired/stimulus", to: "stimulus.min.js", preload: true
pin "@hotwired/stimulus-loading", to: "stimulus-loading.js", preload: true
pin_all_from "app/javascript/controllers", under: "controllers"

pin "popper", to: 'popper.js', preload: true
pin "bootstrap", to: 'bootstrap.min.js', preload: true

in application.html.erb related to js only:

<%= javascript_importmap_tags %>

there is only one clue:

Uncaught TypeError: Failed to resolve module specifier "application". Relative references must start with either "/", "./", or "../".

it shouldn’t appear in chrome but it appears in production. Heroku logs show that everything fine, when deploying also everything fine except:

Stopping all processes with SIGTERM
Process exited with status 143

but google say it not big problem. Here additional gem that i added:

gem "devise", "~> 4.8"
gem 'bootstrap', '~> 5.1.3'
gem "sassc-rails"
gem "rails-controller-testing"
gem "will_paginate", "~> 3.3"
group :production do
  gem "pg", "1.3.5"
end

Will appreciate for any help

1 Like

How did you resolve the problem? i’m stuck in the same place, my app was working fine and suddently it doesn’t work anymore, and browser shows me the same message