Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.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
Service 定制服务的制作和接口_Service_File_Batch File_Minecraft - Fatal编程技术网

Service 定制服务的制作和接口

Service 定制服务的制作和接口,service,file,batch-file,minecraft,Service,File,Batch File,Minecraft,我已经搜索这个有一段时间了,我不确定我是否只是没有使用正确的搜索词,或者答案是否真的那么难找到 我试图做的是从一个批处理文件为游戏服务器创建一个新的Windows服务,然后让一个任务每隔30分钟或更长时间运行另一个批处理文件,该任务将在游戏服务器的命令行上运行两个命令并执行一些文件工作 具体来说,我正在为我帮助运行的一个游戏社区运行一个使用Bukkit的Minecraft服务器,我想确保它始终处于运行状态,除非我明确告诉它停止服务。Bukkit直接从批处理文件运行,并在其上运行自己的命令行 我听

我已经搜索这个有一段时间了,我不确定我是否只是没有使用正确的搜索词,或者答案是否真的那么难找到

我试图做的是从一个批处理文件为游戏服务器创建一个新的Windows服务,然后让一个任务每隔30分钟或更长时间运行另一个批处理文件,该任务将在游戏服务器的命令行上运行两个命令并执行一些文件工作

具体来说,我正在为我帮助运行的一个游戏社区运行一个使用Bukkit的Minecraft服务器,我想确保它始终处于运行状态,除非我明确告诉它停止服务。Bukkit直接从批处理文件运行,并在其上运行自己的命令行

我听说您可以将这种类型的东西作为服务运行,但是命令行将隐藏在视图和/或交互中。这是我问题的第二部分。我有一个方便的小backup.bat文件,它将所有世界文件和用户数据文件复制到一个备份目录中,对其进行7次压缩,然后删除该目录。唯一的问题是,Minecraft喜欢随时打开和写入世界的区域文件,这意味着如果我直接运行它,可能会导致地图损坏。作为补偿,我需要在服务器上运行saveoff命令来暂时禁用文件挂钩,运行备份,并在备份完成后立即运行saveon,这样游戏就可以继续,而不会丢失数据

关于第二个,我想知道的是,是否可以通过批处理文件与游戏服务交互,或者我需要创建一个应用程序来实现这一点?如果是后者,那么具体是如何进行的呢?我在大学里通过第二个OO-C++课程有适度的C++知识,如果有必要,可以学习另一种语言。 简言之,有两个问题: 1.是否可以,以及如何将BAT文件作为Windows服务运行? 2.如何通过BAT文件与所述服务进行接口,如果不可能,我需要写什么样的应用程序来重定向,或者写一篇适合我的教程


提前感谢您的帮助

老问题,用户帐户似乎不再在SO上活动,但是,如果您因为遇到类似问题而偶然发现此问题:

既然我们谈论的是Bukkit Minecraft服务器,那么就转到Bukkit的Essentials插件。 现在,它完全按照OP的要求执行,即停止保存,以便可以在不损坏文件的情况下对文件进行操作,启动脚本,然后再次启动


该脚本可以是链接页面中提供的示例的备份,但可以用于在世界文件上运行任何操作。

问题1可能重复啊,谢谢,似乎我错过了该脚本。问题2取决于系统到接口是否提供命令行API。问题2b如果没有,要编写这样的命令行应用程序,你需要在谷歌上搜索使用该特定Minecraft API的教程。@PA不太确定。我确实在他们的文档页面上看到了一个API,但它似乎是用于实际的服务器JAR,而不是命令接口。也许你可以告诉我,否则我对这种东西有点陌生?