在Java(TM)Platform SE二进制文件中打开

use*_*596 34 java file-io file file-locking filehandle

我试图删除一个文件,我有两个,一个稍微改变,所以我可以删除旧文件,并用我更改的新文件替换它.当我尝试删除该文件时,我收到错误消息"正在使用的文件",其中表示该操作无法完成,因为该文件是在Java(TM)Platform SE二进制文件中打开的.

我怎么关闭它?

rob*_*ess 60

这对我有用(使用Windows).它与ali haider评论的程序基本相同,但有更多细节......

使用Windows命令提示符:

tasklist | findstr java
Run Code Online (Sandbox Code Playgroud)

("findstr"是Windows的命令行实用程序,类似于Linux中的"grep")

使用'java'搜索任何行并记下java进程的PID.

taskkill /F /PID "PID_OF_JAVA_PROCESS"
Run Code Online (Sandbox Code Playgroud)

其中"PID_OF_JAVA_PROCESS"应替换为实际的PID号.

结果:

SUCCESS: The process with PID "PID_OF_JAVA_PROCESS" has been terminated.
Run Code Online (Sandbox Code Playgroud)

对正在运行的每个java进程重复此操作.现在你应该能够得到你想要的文件!

如果您需要Linux的说明(即ps,kill等),请告诉我,但可能大多数Linux用户都知道这些...

  • 更容易做到:“taskill /im java.exe /f”。为我取得了完全相同的结果 (2认同)

小智 20

只需在Windows上打开任务管理器,检查进程,关闭所有java进程.现在再次尝试删除文件,你应该可以.这对我有用.

干杯!


AWT*_*AWT 2

如果它不是在系统启动期间运行的东西,请尝试重新启动以清除所有打开的文件。

  • 人们会认为除了重新启动之外还有其他解决方案(这对于简单地关闭打开的文件来说很烦人)! (6认同)