Web/RubyOnRails

[루비온레일즈] ExecJS::RuntimeError in 에러를 뿜을 때

길버트리 2013. 12. 22. 01:51

필자는 윈도우 8.1(64비트) 버전에서 루비온레일즈를 개발하고 있는데,

이 운영체제에서만 그런지 모르겠지만, 처음부터 난관이 많다.

 

이번에는 아래와 같은 에러창이 떴을 때의 해결책을 정리하였다.

 

 

 

1. ExecJS 젬(gem)이 설치된 곳에 찾아간다.

    필자의 경우 C:\Ruby200-x64\lib\ruby\gems\2.0.0\gems\execjs-2.0.2\lib\execjs

 

2. runtimes.rb를 편집할 것인데 만일을 대비하여 runtimes.rb의 복사본을 만들어 놓는다.

 

3. runtimes.rb를 텍스트 편집기에서 열어 아래와 비슷한 부분을 찾아 아래 코드로 교체 수정한다.

 

    JScript = ExternalRuntime.new(
      :name        => "JScript",
      :command     => "cscript //E:jscript //Nologo",
      :runner_path => ExecJS.root + "/support/jscript_runner.js",
      :encoding    => 'UTF-8'
    )

 

수정 포인트

1) :command 맨 끝에 있던 //U를 제거했고,

2) :encoding의 값이 UTF-16LE였던 것을 UTF-8로 변경하였다.

 

이제 잘 될 것이다!

 

 

 

위 팁을 정리하는데 도움을 준 쓰레드는 아래와 같다.

http://stackoverflow.com/questions/13530042/execjsruntimeerror-in-usersindex-ror