SORU
20 EYLÜL 2012, PERŞEMBE


::ExecJS Windows rubytutorial takip etmeye RuntimeError

GÜNCELLEME:Colin'hattı kaldırma s öneri = / / require_tree . sorun giderildi.

2 gün her öneri orada izleyin ve benim sorunu düzeltmek için çalışıyorum israf var. Beni hayat pis aşağıdaki hatayı geçmek için windows makine ve olamaz http://ruby.railstutorial.org kitap takip etmeye çalışıyorum.

ExecJS::RuntimeError in Static_pages#home

Showing C:/Users/.../bootcamp-sample-app/app/views/layouts/application.html.erb where line #6 raised:

["ok","(function() {\n\n\n\n}).call(this);\n"]
(in C:/Users/.../bootcamp-sample-app/app/assets/javascripts/sessions.js.coffee)
Extracted source (around line #6):

3: <head>
4:   <title><%= full_title(yield(:title)) %></title>
5:   <%= stylesheet_link_tag    "application", media: "all" %>
6:   <%= javascript_include_tag "application" %>
7:   <%= csrf_meta_tags %>
8:   <%= render 'layouts/shim' %>
9: </head>
Rails.root: C:/Users/.../bootcamp-sample-app

Application Trace | Framework Trace | Full Trace
app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb___487732698_30422172'
Request

Msı ile nodejs takılması da dahil olmak üzere her öneri, execjs 1.3.0 ve artık hatırlayamıyorum hangi diğer şeyler kullanarak denedim. İştegem dosya

source 'https://rubygems.org'

gem 'rails', '3.2.8'
gem 'bootstrap-sass', '2.0.0'
gem 'bcrypt-ruby', '3.0.1'
gem 'faker', '1.0.1'
gem 'will_paginate', '3.0.3'
gem 'bootstrap-will_paginate', '0.0.6'

group :development, :test do
  gem 'sqlite3', '1.3.5'
  gem 'rspec-rails', '2.10.0'
  gem 'guard-rspec', '0.5.5'
  gem 'guard-cucumber'
end

group :development do
  gem 'annotate', '2.5.0'
end


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

gem 'jquery-rails', '2.0.2'

gem 'execjs'

# Gems on Linus/Mac
#gem 'therubyracer'


group :test do
  gem 'capybara', '1.1.2'
  gem 'guard-spork', '0.3.2'
  gem 'spork', '0.9.0'
  gem 'factory_girl_rails', '1.4.0'
  gem 'cucumber-rails', '1.2.1', require: false
  gem 'database_cleaner', '0.7.0'


# Test gems on Linux
#  gem 'rb-inotify', '0.8.8'
#  gem 'libnotify', '0.5.9'

# Test gems on Macintosh OS X
#  gem 'selenium-webdriver', '~> 2.22.0'
#  gem 'rb-fsevent', '0.9.1', :require => false
#  gem 'growl', '1.0.3'

# Test gems on Windows
# gem 'rb-fchange', '0.0.5'
# gem 'rb-notifu', '0.0.4'
# gem 'win32console', '1.3.0'
end

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

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
#gem 'debugger''

ve işteoturumları.js.kahve

# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/

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 vendor/assets/javascripts of plugins, if any, 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
// the compiled file.
//
// WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
// GO AFTER THE REQUIRES BELOW.
//
//= require jquery
//= require jquery_ujs
//= require_tree .
//= require bootstrap

uygulama.html.erb

<!DOCTYPE html>
 <html>
 <head>
   <title><%= full_title(yield(:title)) %></title>
   <%= stylesheet_link_tag    "application", media: "all" %>
   <%= javascript_include_tag "application" %>
   <%= csrf_meta_tags %>
   <%= render 'layouts/shim' %>
 </head>
 <body>
 <%= render 'layouts/header' %>
 <div class="container">
   <%= yield %>
   <%= render 'layouts/footer' %>
 </div>
 </body>
 </html>

Buradaiçerik konsol

Processing by StaticPagesController#home as HTML
  Rendered static_pages/home.html.erb within layouts/application (45.0ms)
Completed 500 Internal Server Error in 1136ms

ActionView::Template::Error (["ok","(function() {\n\n\n\n}).call(this);\n"]
  (in C:/Users/.../bootcamp-sample-app/app/assets/javascripts/sessions.js.coffee)):
    3: <head>
    4:   <title><%= full_title(yield(:title)) %></title>
    5:   <%= stylesheet_link_tag    "application", media: "all" %>
    6:   <%= javascript_include_tag "application" %>
    7:   <%= csrf_meta_tags %>
    8:   <%= render 'layouts/shim' %>
    9: </head>
  app/views/layouts/application.html.erb:6:in `_app_views_layouts_application_html_erb___487732698_30422172'


  Rendered C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/actionpack-3.2.8/lib/action_dispatch/middleware/templates/rescues/_trace.erb (2.0ms)
  Rendered C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/actionpack-3.2.8/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (1.0ms)
  Rendered C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/actionpack-3.2.8/lib/action_dispatch/middleware/templates/rescues/template_error.erb within rescues/layout (34.0ms)

Yüklü Devkit var ve çeşitli taşlar denedim ama bana windows üzerinde geliştirmek yardımcı olabilir hangi değişiklikleri önermek lütfen. Her şey için rubyinstaller kullandım.

Neyi kaçırıyorum?

CEVAP
2 Ocak 2013, ÇARŞAMBA


Arkadaşım Win 8 Raylar üzerinde bir öğretici RTM birkaç ay önce çalışıyordu ve bu hata ile karşılaştım. Bu sorun Windows 7 de var, ama bu yardımcı olabilir eğer emin değilim.

Seçenekler:

1) //= require_tree . / konusunu göz ardı ÇıkarmaColinR yukarıda belirtildiği gibi, bu hattı ilk etapta bir soruna neden olmamalıdır. ExecJS düzgün bir şekilde sisteminizde JavaScript çalışma zamanı ile çalışma ve bu hat sadece bu gerçeği görmezden geliyor çıkarılması ile gerçek bir sorun var.

2) Yükleme / Node.js kaçmak -Birçok kişi sadece node.js yükleme ve zaten onların sistemde JavaScript çalışma zamanı yerine bunu kullanarak sonuna kadar görünüyor. Bu geçerli bir seçenek olmakla birlikte, aynı zamanda ek yazılım gerektirir ve sadece ExecJS düzgün bir şekilde sisteminizde JavaScript çalışma zamanı ile çalışmıyor asıl sorun, önler. Eğer sisteminizde mevcut JavaScript çalışma zamanı çalışmak gerekiyor ise, neden daha fazla yazılım yüklemek yerine iş yapmak değil mi? ExecJS yaratıcısı göre, çalışma zamanı zaten Windows yerleşik aslında destekledi

ExecJS Ruby, JavaScript kodu çalıştırmanızı sağlar. Otomatik olarak en iyi çalışma zamanı JavaScript programı değerlendirmek için kullanılabilir alır, Ruby nesne olarak size sonucu verir.

ExecJS bu çalışma destekler:

  • therubyracer - Google V8 Ruby içinde gömülü
  • therubyrhino - Mozilla Gergedan JRuby içinde gömülü
  • Node.js
  • JavaScriptCore Apple Mac OS X ile birlikte
  • Microsoft Windows Script Host (JScript)

(github.com/sstephenson/execjs#execjs dan )

3) Aslında konu / Öğrenme sabitlemeVe 2 seçenek 1 bilgisi başka çözümler aramak için kullanın. Kaç üzerine seçenek 1 veya 2 görüştüğünü kabul edilen çözüm aslında yapıyorduk kök sorun hakkında daha fazla bilgi bulmak önce kapattım anlatamam. Tek sebebi tuttuk arayan olduğunu kabul ettiğine inanamıyorum Raylar takım (1) Ekle bir kod satırı her iskele oluşturulan proje bu neden bir sorun, ya da (2) gerektiren kuruyoruz ek yazılım sadece çalıştırmak için varsayılan kod satırı. Ve biz sonunda temel sorun için bir düzeltme geldi yani (sizin kilometre değişebilir).

Bizim için çalıştı Düzeltme: Sistemi sorunları, ExecJS bulmakçalışma zamanları.rbdosya. this gibi görünüyor. Yedekleme için bulunan dosyanın bir kopyasını alın. Özgün çalışma açın.düzenleme için rb. Çizgi JScript = ExternalRuntime.new( ile başlayan bölümü bulun. Çizgi :command => "cscript //E:jscript //Nologo //U", - //U Kaldır içeren bu bölümde, sadece. Satırında :encoding => 'UTF-16LE' # CScript with //U returns UTF-16LE değişikliği içeren - 16LE, UTF UTF-8 . Değişiklikleri dosyaya kaydedin. Dosyanın bu bölümü şu şekilde olmalıdır:

JScript = ExternalRuntime.new(
    :name        => "JScript",
    :command     => "cscript //E:jscript //Nologo",
    :runner_path => ExecJS.root   "/support/jscript_runner.js",
    :encoding    => 'UTF-8' # CScript with //U returns UTF-16LE
)

Sonraki, daha sonra Raylar yeniden sunucu ve özgün hata üretilen tarayıcınızda sayfayı yenile dur. Umarım sayfayı hatasız şimdi yükler. İlk sonuçlarımız yayınlanmıştır nerede ExecJS iplik burada sorun: https://github.com/sstephenson/execjs/issues/81#issuecomment-9892952

Eğer bu sorunu çözdü mü yoksa, her zaman değiştirilen çalışma zamanları üzerine yazabilirsiniz.sen (umarım) yaptı ve her şey eski haline dönecek olur, yedek kopya ile rb. Bu durumda 3 seçenek düşünün ve aramaya devam et. Bize require_tree çıkarma ya node.js etrafta zaten bolca var yükleme olmadığı sürece eninde sonunda senin için çalışıyor.. ne bileyim. :)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BradleyWuzHere

    BradleyWuzHe

    25 NİSAN 2011
  • Chip Johnson

    Chip Johnson

    30 AĞUSTOS 2007
  • The Warp Zone

    The Warp Zon

    24 AĞUSTOS 2007