我有戏!生成 .png 图像文件的应用程序,作为我的 Web 客户端随后显示的可视化过程的一部分。我以为我正确设置了写入路径,但只在 DEV 模式下进行了测试。切换到生产模式后,我的 Web 客户端会尝试从正确的位置获取文件,但我的 Java 代码不再将我的文件写入正确的位置。
基本上在 DEV 中,写入路径类似于:
project/application/public/images/image.png
在生产环境中,写入路径需要类似于:
project/application/target/scala-2.10/classes/public/images/image.png
我收集了以下代码来指定文件写入位置是否可行?
//Set up paths correctly regardless of where the application is running
String basePath = Play.application().path().getPath();
String fullPath = basePath + "/public/images/image.png";
好吧,除非我搞砸了其他东西,否则它不会像我预期的那样工作 - DEV 与生产的路径没有什么不同。它总是这样结束:
project/application/public/images/image.png
各种帖子(例如:Play!Framework 2.0 paths - play run vs play start)建议在我的 .conf 文件的生产版本中指定路径......我应该使用它来启动我的播放应用程序......但老实说,是有什么原因我发布的代码的一些变体不应该正常工作?
编辑:这可能真的不像我期望的那样工作,因为动态生成的文件通常无法返回,因为 public/ 文件夹中的所有资产都被编译成一个 .jar 文件。