Java 从src/main/resources读取文件作为文件?
我的项目结构看起来像Java 从src/main/resources读取文件作为文件?,java,scala,Java,Scala,我的项目结构看起来像 src/main/resources/bluecoat_100_lines.log object Main { def main(args: Array[String]) { val system = ActorSystem("logprocessor") val file: File = new File("src/main/resources/bluecoat_100_lines.log") val logFile = LogFile(
src/main/resources/bluecoat_100_lines.log
object Main {
def main(args: Array[String]) {
val system = ActorSystem("logprocessor")
val file: File = new File("src/main/resources/bluecoat_100_lines.log")
val logFile = LogFile(file, system)
logFile.process()
}
}
我的代码看起来像
src/main/resources/bluecoat_100_lines.log
object Main {
def main(args: Array[String]) {
val system = ActorSystem("logprocessor")
val file: File = new File("src/main/resources/bluecoat_100_lines.log")
val logFile = LogFile(file, system)
logFile.process()
}
}
及
目前我得到
Exception in thread "main" java.lang.AssertionError: assertion failed: log file must exists
at scala.Predef$.assert(Predef.scala:165)
at com.learner.processor.LogFile.process(LogFile.scala:24)
at com.learner.logprocessor.Main$.main(Main.scala:15)
at com.learner.logprocessor.Main.main(Main.scala)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
如何将it资源文件作为文件
打开,而不是作为输入流
作为getClass.getResourceAsStream
打开
File f = new File("your file directory here.");
另外,您的
getClass.getResourceAsStream在哪里?您不知道;您使用流。这不是预期用途。资源应该是只读的,并且可能打包在jar之类的容器中。您可以这样存储原始文件,并使用Java getResource/getResourceAsStream将其复制到外部文件。用这个。