我想使用 Java 7
重命名文件夹。我试过使用:
srcDir.renameTo(desDir);
但根据我的理解(和个人经验),.renameTo
仅适用于重命名文件。我也厌倦了使用:
FileUtils.moveDirectory(srcDir, desDir);
但是我收到此错误:
Exception in thread "main" java.io.IOException: Unable to delete file: C:webapps37WEB-INFlibstax-api-1.0-2.jar
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2279)
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
at org.apache.commons.io.FileUtils.forceDelete(FileUtils.java:2270)
at org.apache.commons.io.FileUtils.cleanDirectory(FileUtils.java:1653)
at org.apache.commons.io.FileUtils.deleteDirectory(FileUtils.java:1535)
at org.apache.commons.io.FileUtils.moveDirectory(FileUtils.java:2756)
at batDel.batDelJavaC.main(batDelJavaC.java:52)
注意:我在Tomcat 8服务器上运行,但在运行项目之前已经停止了它。
有问题的.jar文件很可能实际上是由某个进程(如应用程序服务器)打开的。 在关闭文件之前,您将无法移动或删除它。
在Windows上(看起来你正在使用),你可以使用像SysInternals的Process Explorer这样的实用程序来查看某个进程是否打开了该文件。