###前提・実現したいこと
初のアプリを公開しようと、こちらのページ >>初心者向け:AWS(EC2)にRailsのWebアプリをデプロイする方法 ⑤を見ながら悪戦苦闘しています。ようやく、プレコンパイルというところまで来たのですが、エラーが起きてしまい、解決できないでいます。
プレコンパイルエラーを無視して、unicornの起動、該当urlにアクセスすると、画像非表示、cssの適用なしなので、表示は崩れてしまっていましたが、アクセスは可能でした。
###発生している問題・エラーメッセージ
プレコンパイルエラー
エラーメッセージ
rake aborted! ExecJS::RuntimeError: SyntaxError: Unexpected token: operator (*) JS_Parse_Error.Object.defineProperty.get ((execjs):3538:621) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Tasks: TOP => assets:precompile (See full trace by running task with --trace)
###該当のソースコード
bundle exec rake assets:precompile RAILS_ENV=production
###試したこと
一旦unicornを停止させて、再度コマンド入力しましたがダメでした。
Rails 4.2以降: Rails+Unicorn で、publicディレクトリの中身が404になる場合の解決策の中に記載されていたconfig/environments/production.rbのconfig.serve_static_files = true の書き換えも試しましたが、エラー変わらず。
また、ローカルで同アプリに同じコマンドを打つと別のエラーが出ました。
rake aborted! Devise.secret_key was not set. Please add the following to your Devise initializer:
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
Rails:4.2.6, AWS_EC2, RDS
jsファイル、jsの使用箇所を追記させて頂きます。
↓application.js
// This is a manifest file that'll be compiled into application.js, which will include all the files // listed below. // // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path. // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // compiled file. // // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details // about supported directives. // //= require jquery //= require jquery_ujs //= require turbolinks //= require bootstrap //= require_tree . //= require cocoon
↓index.html.erb 計算結果を表示するjs
<script type="text/javascript"> $(function() { $('#form').submit(function(){ var gender = $('#select-gender').val(); var bw = $('#bw').val(); var used_weight = $('#used_weight').val(); if(gender == "0"){ var a = -216.0475144; var b = 16.2606339; var c = -0.002388645; var d = -0.00113732; var e = 7.01863*(10**-6); var f = -1.291*(10**-8); } else{ var a = 594.31747775582; var b = -27.23842536447; var c = 0.82112226871; var d = -0.00930733913; var e = 4.731582*(10**-5); var f = -9.054*(10**-8); } var fomula = 500 / (a + (b*bw) + (c*(bw**2)) + (d*(bw**3)) + (e*(bw**4)) + (f*(bw**5))); var wilks = fomula*used_weight; var wilks_m = wilks*100; var wilks_round = Math.round(wilks_m)/100; console.log(gender); $('#kekka').text(wilks_round); $('#result-display').show(); return false; }); }); </script>
$ bundle exec rake assets:precompile RAILS_ENV=production --trace の表示結果
** Invoke assets:precompile (first_time) ** Invoke assets:environment (first_time) ** Execute assets:environment ** Invoke environment (first_time) ** Execute environment ** Execute assets:precompile rake aborted! ExecJS::RuntimeError: SyntaxError: Unexpected token: operator (*) JS_Parse_Error.Object.defineProperty.get ((execjs):3538:621) /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:47:in `rescue in block in call' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:44:in `block in call' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:75:in `block in lock' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:73:in `Locker' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:73:in `lock' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/ruby_racer_runtime.rb:43:in `call' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/uglifier-3.2.0/lib/uglifier.rb:195:in `run_uglifyjs' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/uglifier-3.2.0/lib/uglifier.rb:157:in `compile' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/uglifier_compressor.rb:53:in `call' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/uglifier_compressor.rb:28:in `call' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/processor_utils.rb:75:in `call_processor' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/processor_utils.rb:57:in `block in call_processors' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/processor_utils.rb:56:in `reverse_each' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/processor_utils.rb:56:in `call_processors' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/loader.rb:134:in `load_from_unloaded' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/loader.rb:60:in `block in load' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/loader.rb:317:in `fetch_asset_from_dependency_cache' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/loader.rb:44:in `load' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/cached_environment.rb:20:in `block in initialize' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/cached_environment.rb:47:in `load' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/base.rb:66:in `find_asset' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/base.rb:73:in `find_all_linked_assets' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/manifest.rb:142:in `block in find' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/legacy.rb:114:in `block (2 levels) in logical_paths' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/path_utils.rb:228:in `block in stat_tree' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/path_utils.rb:212:in `block in stat_directory' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/path_utils.rb:209:in `each' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/path_utils.rb:209:in `stat_directory' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/path_utils.rb:227:in `stat_tree' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/legacy.rb:105:in `each' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/legacy.rb:105:in `block in logical_paths' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/legacy.rb:104:in `each' /var/www/projects/tranning/vendor/bundle/ruby/2.3.0/gems/sprockets-3.7.1/lib/sprockets/legacy.rb:104:in `logical_paths' ~~~~~~~~~~~~文字数制限で以下略~~~~~~~~~~~~~~~~~~~~~~~~
↓ wilks.js削除後のプリコンパイルエラー 見た所、{が合ってないとかはなさそうですが・・・。
rake aborted! Sass::SyntaxError: Invalid CSS after "1215 ": expected "{", was "}" (sass):268
回答2件
あなたの回答
tips
プレビュー