2016-10-20 3 views
1

이 질문은 근본적으로 Linker error in ScalaJS: "Referring to non-existent class"과 동일하지만 세부 사항이 다른 것처럼 보입니다. build.sbt에 JVM 버전을 지정하지 않았습니다.존재하지 않는 클래스 참조 java.io.File

scala.io.Source 또는 java.io.File을 사용하여 scalajs 앱의 파일에 액세스하려고합니다. 순간 나도 내가 링크를 얻을 사용하려고 시도로 실패 :

... 
[info] Fast optimizing C:\Users\Tim\Documents\GitHub\binpack\target\scala-2.11\binpack-fastopt.js 
[error] Referring to non-existent class java.io.File 
[error] called from client.jsClient$.onFileChosen(japgolly.scalajs.react.SyntheticEvent)scala.Function0 
... 

내가 여기에 무슨 일이 일어나고 있는지 진단 할 수있는 방법이 있습니까? 나는 문제가 java.io.File과 관련이 없다고 가정하고 있지만 다음 단계가 무엇인지 알지 못한다.

이것은 scala 2.11.8이고 sbt는 0.13.7입니다.

답변

2

java.io.File은 특별히 JVM에 연결되어 있으므로 Scala.js와 호환되지 않습니다. 보다 자세한 내용은 http://www.lihaoyi.com/hands-on-scala-js/#PortingJavaAPIs (맨 아래로 스크롤)을 참조하십시오.

그래서 Scala.js에서 파일 시스템 IO를 수행하려면 io.js와 같이 JavaScript 용으로 특별히 구현 된 솔루션을 사용해야합니다. 여기 예가 있습니다 : http://bchazalet.github.io/2015/07/20/scalajs-electron-skeleton-part-2/

+0

설명해 주셔서 감사합니다. node.js를 사용할 필요가없는 파일을 읽을 수있는 다른 방법이있는 것처럼 보입니까? http://stackoverflow.com/q/30332326/389828 –

관련 문제