Estoy utilizando un proyecto experto externo, donde el frasco generado incluye un archivo binario foo/bar/file.dat
cuya ruta exacta de las fuentes es src/main/foo/bar/file.dat
. Este archivo es necesario por alguna razón, de lo contrario el código produce una excepción.
Traté de convertirlo en un proyecto de SBT pero el archivo no quede incluido en el frasco.
He intentado añadir includeFilter in Compile := "parser.dat"
, pero esto me da un error:
IO error while decoding .../src/main/foo/bar/file.dat with UTF-8: MALFORMED[1]
Please try specifying another one using the -encoding option
¿Cómo le digo SBT para incluir el archivo "tal cual" en el frasco compilado?
EDIT: La cuestión no está relacionada ligado. La pregunta es "cómo leer correctamente los recursos?", Mientras que yo quiero saber "suponiendo que ésta es la manera que tengo para leer los recursos, ¿Cómo se crea el frasco correctamente?".
Quiero usar la biblioteca tercera parte tal como está, sin cambiar el código.
Trate de usar mappings
para agregar un archivo personalizado para el paquete como tal
mappings in (Compile, packageBin) += {
(baseDirectory.value / "src" / "main" / "foo" / "bar" / "file.dat") -> "foo/bar/file.dat"
}
La ejecución de sbt package
ahora debe producir un frasco con file.dat
incluido.