簡體   English   中英

如何獲取coffeescript在Heroku上進行編譯?

[英]How to get coffeescript to compile on Heroku?

我正在使用Rails 3.2,並將其作為Gemfile:

gem 'rails', '3.2.11'

group :development do
  gem 'sqlite3', '1.3.5'
  gem 'rspec-rails', '2.11.0'
end

group :assets do
  gem 'sass-rails',   '3.2.5'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'
end

gem 'jquery-rails', '2.0.2'
gem 'coffee-script'

group :test do
  gem 'capybara', '1.1.2'
end

group :production do
  gem 'pg', '0.12.2'
  gem 'therubyracer-heroku', '~> 0.8.1.pre3'
end

我的web應用程序可以在localhost上正常運行,但是由於有coffeescript文件,因此無法在Heroku上運行。 如果有任何幫助,我會使用Heroku Cedar。 我查看了Heroku Web應用程序中的源代碼,但看起來好像我的cofeescript沒有像Heroku那樣被壓縮到縮小的javascript中。 我如何在Coffeeoku上編譯該Coffeescript? 我究竟做錯了什么?

我們需要了解有關您的應用程序的更多信息,才能檢查所有可能性。

一個不錯的起點是rake assets:precompile並確保您可以在本地運行它。 這是Heroku將要運行的命令-如果一切設置正確,則應該運行。

為了進一步講解,我建議您閱讀Heroku上的資產管道,並確保您“跨過t並加倍i”

如果您仍然遇到問題,則可以使用更具體的信息來編輯此問題。

在Heroku的Cedar上,無需將therubyracer-heroku包含在Gemfile中。 在我的源代碼中檢查application.js時,我發現coffeescript確實被編譯為javascript。 問題是我的coffeescript依賴於其他文件,這些文件存儲在app / assets / libs中。 我認為Heroku不會那么深入,所以我相信javascript並沒有全部加載。 我不需要運行rake assets:precompile 這是適用的Gemfile:

source 'https://rubygems.org'

gem 'rails', '3.2.11'

group :development do
  gem 'sqlite3', '1.3.5'
  gem 'rspec-rails', '2.11.0'
end

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '3.2.5'
  gem 'coffee-rails', '3.2.2'
  gem 'uglifier', '1.2.3'
end

gem 'jquery-rails', '2.0.2'

group :test do
    gem 'capybara', '1.1.2'
end

group :production do
  gem 'pg', '0.12.2'
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM