我注意到我无法在不关闭IDE /命令行的情况下两次部署javapackager
的JavaFX应用程序。我想在Windows 10计算机上创建应用程序的本机映像。
第二次部署后,我得到了例外:java.io.IOException: Access denied
。关闭并重新打开后,它再次用于一次部署。
我可以使用Netbeans(创建JavaFX应用程序,启用Native Packaging,然后打包为#34;仅图像")在3台不同的PC上使用Oracle JDK 8u121和Windows 10重现此问题。 我也在eclipse的gradle项目中遇到这个错误,试图用官方的ant任务(https://docs.oracle.com/javase/8/docs/technotes/guides/deploy/javafx_ant_tasks.html)部署它
也在Ubuntu VM和OpenJDK上尝试过。没问题。
有人可以在Windows 10上重现此错误吗? 是否有解决方法或官方错误报告?
提前致谢 乔伊
答案 0 :(得分:1)
这是一个已知问题,原因是文件句柄泄漏并且我已经报告:https://bugs.openjdk.java.net/browse/JDK-8148717它只是特定于Windows,因为JRE文件夹上的文件锁定在Windows上工作 - 系统,其他操作系统不会锁定。
这个bug在JavaFX-Gradle-Plugin中得到了解决,因为gradle启动守护进程,后者支持JVM,JavaFX-Maven-Plugin并不需要它,因为JVM总是关闭的。
免责声明:我是JavaFX-Gradle-Plugin的创建者和JavaFX-Maven-Plugin的维护者。