我正在构建java应用程序,它会下载一些文件,修改它们并将其部署到目标。部署文件后,程序将删除所有本地文件。
try{
...
//logic to download/modify files
}catch(){
...
//catch exceptions
}finally{
...
//logic to delete all the files
}
除非我在执行过程中终止(ctrl + c命令提示符)应用程序,否则这样可以正常工作 在应用程序崩溃的情况下有没有办法删除相同的文件?
答案 0 :(得分:2)
尝试使用shutdownhook - https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Runtime.html#addShutdownHook%28java.lang.Thread%29
这个文档Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
//Undo changes or delete files codes
}
});