あなたのコードでは、 FileOutputStreamを使用してファイルをコピーしようとしています。これには、既存のファイルへの有効なパスが必要ですFileNotFoundException
。(こちらのドキュメントを参照してください)
val src = new File("/assets/public/images/default/male.jpg")
val dest = new File("/assets/public/images/profile/male1.jpg")
new FileOutputStream(dest) //dest should exist
それにもかかわらず、Play にはファイルをコピーするための独自のユーティリティがあります。ここにリンクがあります。
import play.api.libs.Files
Files.copyFile(src, dest, true, true)
println(dest.getAbsolutePath()) // filepath of copied file
また、ファイルは作業ディレクトリにコピーされるため、お気に入りの IDE のフォルダー構造に新しいファイルが表示されない場合があります。
余談ですが、次を使用してパブリック アセットのパスを取得できます。routes
val srcPath = routes.Assets.at("public/images/default/male.jpg").url