2016-10-03 2 views
1

ASP.NET MVC 4 프로젝트에서 ReactJs.NET을 사용하고 있습니다. 나는 응용 프로그램 시작에라고 내 ReactConfig.cs이를 지정하여 자바 스크립트 엔진 MSIE에 대한 대체를 비활성화 :ReactJs.NET 및 V8을 사용하는 서버 측 렌더링에서 예외가 발생합니다.

ReactSiteConfiguration.Configuration.SetAllowMsieEngine(false); 

이 내 개발 시스템에서 작동하지만 생산. throw되는 예외입니다 : 내가 보장 한

Failed to initialise ClearScript V8. This is most likely caused by the native libraries (ClearScriptV8-64.dll and v8-x64.dll) missing from your app's Bin directory, or the Visual C++ runtime not being installed 

(ClearScriptV8-64.dll와 V8-x64.dll 포함) ClearScript.V8 폴더가 프로덕션 서버 등의 bin 폴더에 걸쳐 복제되고 I 현재 Visual C++ 런타임이 누락되었는지 여부를 확인 중입니다. 나는 Visual C++ Redistributable for Visual Studio 2015을 다운로드하여 설치했습니다 : https://www.microsoft.com/en-us/download/details.aspx?id=48145 동일한 예외가 발생합니다.

여기에 분명한 내용이 있습니까? 잘못된 Visual C++ 런타임을 설치 했습니까?

답변

1

해당 DLL 파일이 ClearScript.V8 폴더에 있습니까? 예를 들어 bin\ClearScript.V8\ClearScriptV8-64.dll 일 필요가 있습니다.

또는 V8이로드되는 방식을 변경하고 더 이상 수동으로 DLL 파일을 복사하지 않아도되는 최신 버전의 JavaScriptEngineSwitcher를 사용하는 ReactJS.NET 3.0의 출시 후보를 사용해 볼 수도 있습니다. 현재 ReactJS.NET 3.0에 대한 문서는 없지만 현재 2.x 버전과 매우 유사합니다. 곧 최종 릴리즈의 문서 작업을 할 것입니다.

+0

예 모든 필수 파일이 bin \ ClearScript.V8에 복사됩니다. 답장을 보내 주셔서 감사합니다! 나는 실제로 reactjs.net에 대한 당신의 Github에서 대답을 찾을 수 있었다 :) 내 대답을 참조하십시오. – alkesos

1

제 경우에는 Visual C++ 2013 런타임을 설치하여이 문제를 해결할 수있었습니다.이 경우 실제로 작동 한 유일한 버전이었습니다.

https://github.com/reactjs/React.NET/issues/80

날이었다 도움 코멘트 :

그냥 다른 노트, ClearScript 5.4 나는 여기에 대한 답을 찾을 수 2012 또는 2015

도에 운이 없었다. 4 추가 정보에 VS2015 또는 2013 C++ 런타임이 적용되지만 내 경험상 2013 년 이있는 경우에만 작동합니다.