Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 进程无法访问该文件,因为其他进程正在使用该文件_Java_Windows_Process_Batch File - Fatal编程技术网

Java 进程无法访问该文件,因为其他进程正在使用该文件

Java 进程无法访问该文件,因为其他进程正在使用该文件,java,windows,process,batch-file,Java,Windows,Process,Batch File,我有一个用C语言编写的程序,它将在运行2小时后重新启动Java应用程序 首先,我使用批处理文件运行java程序 @echo off java -server -Xmx1024m -Xbootclasspath/p:"bin;" website.Server >>C:\web_logs\console.log 它工作得非常好,但在2小时之后,我使用Runtime.getRuntime();在Java中进行干净的准备重启;执行我的C程序“Restarter.exe”。 Restart.

我有一个用C语言编写的程序,它将在运行2小时后重新启动Java应用程序

首先,我使用批处理文件运行java程序

@echo off
java -server -Xmx1024m -Xbootclasspath/p:"bin;" website.Server >>C:\web_logs\console.log
它工作得非常好,但在2小时之后,我使用Runtime.getRuntime();在Java中进行干净的准备重启;执行我的C程序“Restarter.exe”。 Restart.exe终止了java进程,也终止了cmd进程(我终止了命令进程,因为我不确定它为什么一直说“…进程无法访问另一个进程使用的文件。”

如果在我的参数之后不使用windows日志“>>”,它就可以正常工作

只是当我尝试记录控制台时,它不会重新启动。我在控制台中进行了大量调试,windows命令提示符只能记住这么多。因此,我使用“>>”来记录文件并稍后读取。我不想通过java记录文件,因为如果我使用windows计算机,我不需要这样做

所以我的问题是,在我的参数之后,我如何仍然使用“>>”来记录控制台,以便它仍然重新启动?它一直说进程正在使用,但我认为我是通过杀死java和cmd来杀死它的?我可以做些什么来修复这个问题或结束进程,以便我可以解析同一个文件

谢谢。

我建议您安装,当您收到错误消息时,请使用“查找句柄”功能,查看哪个进程持有该文件的句柄


发回!

使用TASKKILL/IM java.exe/f,然后重新启动您的sonarqube服务器。

我尝试过这样做,但我不确定我做错了什么,但在它说它被另一个进程使用后,它立即终止,我不确定如何跟踪它:\