小编MiB*_*MiB的帖子

Python无法与Minecraft服务器的子进程通信

我正在尝试为Minecraft服务器编写处理程序/控制器.我的问题是,我似乎无法通过写作和阅读来正常工作.当客户端发出使用服务器类方法的命令时,serverComMinecraft服务器的文本/日志开始进入Python窗口/ Python控制台,并且连接的客户端挂起.此外,似乎在我使用之后Popen,Minecraft服务器在我写入服务器(aka serverCom方法)之前并没有真正启动.如果有人想知道,则Popen转到打开.jar文件的批处理文件.这是在Windows XP上.

import subprocess
import os
import configobj
import socket
import threading
from time import sleep

config = configobj.ConfigObj("config.ini")
cHost = config["hostip"]
cPort = int(config["hostport"])
cBuffer = int(config["serverbuffer"])
cClients = int(config["numberofclients"])
cPassword = config["password"]

class server(object):
    def __init__(self):
        self.process = False
        self.folder = "C:\\servers\\minecraft-danny"
        self.max = configobj.ConfigObj("%s\\simpleserver.properties"%self.folder)["maxPlayers"]

    def serverStart(self):
        if not self.process:
            self.process = subprocess.Popen("java -Xmx1024m -Xms1024m -jar minecraft_server.jar nogui", cBuffer, None, subprocess.PIPE, subprocess.PIPE, subprocess.STDOUT, cwd = self.folder)
            return True
        return …
Run Code Online (Sandbox Code Playgroud)

python subprocess minecraft

19
推荐指数
1
解决办法
2420
查看次数

标签 统计

minecraft ×1

python ×1

subprocess ×1