繁体   English   中英

临时文件不会在退出时删除-这是为什么?

[英]Temp file won't delete on exit - why is this?

我正在尝试在退出时删除以下临时文件:-“ hsperfdata_user”-“ JNativeHook-2.1.0”-“ jna-196922”

看来他们没有删除!

if (temp != null) {
    for (File file : temp.listFiles()) {
        if (file.getName().contains("JNative") || file.getName().contains("rar") || file.getName().contains("hsper") || file.getName().contains("jna") || file.getName().contains("dll")) {
            file.deleteOnExit();
            System.out.println(file.getName());
        }
    }
}

“重复”问题是指删除您创建的文件-我尚未创建这些临时文件。 文件是故意的。 它们自动创建。

在Windows上这是不可能的,因为在尝试删除自身时DLL仍会加载到VM中。 如果有问题,则应将文件永久解压缩到安装位置并设置适当的java.library.path 我想重申一下这是不可能的,因为由于技术限制,java没有提供System.unload(...)方法来安全地从JVM中删除该库。

可能是这样: https : //github.com/kwhat/jnativehook/issues/148#issuecomment-282173982

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM