这是用于Minecraft服务器,我正在使用python处理多个服务器文件夹,每个服务器文件夹中都有一个start.bat。
这是start.bat的样子:
java -Xmx4G -jar server.jar nogui
pause
如果我双击它,它会很好,但是,如果我从python这样调用它:
import os
os.system('server\\start.bat')
Python说:'1',而cmd说:错误:无法访问jarfile server1.15.jar
我看着this post,并尝试了以下操作:
以上都不对我有用,有什么线索吗?
编辑2:我也可以直接从python启动jar文件,而无需使用bat文件,但是我不知道该怎么做]
也许这对于很多人来说都是显而易见的,但是我会写出对我有帮助的人来帮助同样问题的人。
假设具有此文件夹结构:
folder\start.py #is the python starter
folder\server\server.jar #is the server jar
folder\server\start.bat #is the server jar starter (java -Xmx1500M -Xms125M -jar server.jar nogui)
[当您使用python调用os.system('server\\start.bat')
时,它将打开一个新的控制台,这使我认为它是start.bat cmd
,实际上不是python在folder
目录中执行批处理命令。
我发现有两种方法可以解决此问题,但它们都不是很方便(我想我将制作一个python函数来自动完成该过程):
选项一:将start.bat
文件更改为java -Xmx1500M -Xms125M -jar server\server.jar nogui
选项二:更改start.bat
在第一行之前添加cd server
。