이전에이 문제가 있었지만 오래되었습니다. 이제 재 포장되었습니다 : IntelliJ IDEA에서 sbt-build 기반 스칼라 프로젝트를 수행하고 있는데 실행 구성을 실행하면 getResource
또는 getResourceAsStream
을 통해 리소스를 찾지 못합니다. 전에는 제대로 작동 했으므로 코드의 경로가 정확합니다.IntelliJ IDEA/Scala - 리소스를 읽을 수 없습니다.
당신은 resources
디렉토리가 제대로 표시되어 있는지 확인하고, 그래서 "/at/iem/sysson/color-tables.bin"할 수 있어야한다 : 예를 들어, 다음 프로젝트 브라우저의 도면이다 녹이다. 여기에 독자 코드 : sbt
통해 실행 또는 독립 실행 형 응용 프로그램을 만들 때
package at.iem.sysson
object Main {
lazy val colorTables: Map[String, ColorPaletteTable] = {
val is = Main.getClass.getResourceAsStream("color-tables.bin")
...
}
}
이 인 IntelliJ에서 작업하는 데 사용, 그것은 여전히 작동합니다. 하지만 IntelliJ에서 실행 한 설정으로 이제 깨졌습니다. getResourceAsStream
은 null
을 반환합니다.
나는 이미 .idea
프로젝트를 삭제하고 처음부터 다시 만들었습니다. 나는 또한 IntelliJ를 종료하고 다시 시작했습니다. 자원은 확실히 표시됩니다 :
문제점은 무엇입니까? this과 관련되어 보이지만 실행 구성을 삭제하고 재생성해도 도움이되지 않습니다. 나는 /usr/bin/java -Didea.launcher.port=7537 ...
을 얻지 만 resources
디렉토리는 -classpath
에서 누락되었습니다.
해결 방법 작업 환경에서'src/main/resources'를 작업 디렉토리로 사용하는 것이 좋습니다. –
어떤 버전을 사용하고 있습니까? 나는 똑같은 문제가 있었지만 IntelliJ IDEA 2016.2.4, Build # IU-162.2032.8, 2016 년 9 월 9 일에 수정 된 것으로 믿는다. – Matthew
@Matthew - 예, 정확히 같은 버전을 사용하고 있습니다. –