MaaAssistantArknights
MaaAssistantArknights copied to clipboard
v5.3.0-beta.2 版本无法在 Linux Python 环境中使用
在提问之前...
- [X] 我理解 Issue 是用于反馈和解决问题的,而非吐槽评论区,将尽可能提供更多信息帮助问题解决
- [X] 我填写了简短且清晰明确的标题,以便开发者在翻阅 issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
- [X] 我已查看最新测试版本的更新内容,并未提及该 bug 已被修复的情况
- [X] 我已检查了置顶议题(pinned issue),确认我的问题未被提及
问题描述
问题出现于 Updater 中的 init 方法
def __init__(self, path, version):
self.path = path
self.version = version
self.latest_json = None
self.latest_version = None
self.assets_object = None
# 使用子线程获取当前版本后关闭,避免占用dll
q = queues.Queue(1, ctx=multiprocessing)
p = Process(target=self._get_cur_version, args=(path, q,))
p.start()
p.join()
# MAA当前版本 self.cur_version
self.cur_version = q.get()
v5.3.0-beta.2 版本在执行最后一步 self.cur_version = q.get()
时会卡住。
回退至 v5.3.0-beta.1 则可以正常使用。
Version
OS: Ubuntu 24.04 Python: 3.12 MAA: v5.3.0-beta.2
日志文件
MAA Log: asst.log
看起来 MAA 这时已经退出,但是 Python 这边没有拿到返回值
Python Traceback:
root@ubuntu:~/redroid/maa/Python# python ./sample.py
^CTraceback (most recent call last):
File "/root/redroid/maa/Python/./sample.py", line 25, in <module>
Updater(path, Version.Beta).update()
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/redroid/maa/Python/asst/updater.py", line 51, in __init__
self.cur_version = q.get()
^^^^^^^
File "/usr/lib/python3.12/multiprocessing/queues.py", line 103, in get
res = self._recv_bytes()
^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/multiprocessing/connection.py", line 216, in recv_bytes
buf = self._recv_bytes(maxlength)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/multiprocessing/connection.py", line 430, in _recv_bytes
buf = self._recv(4)
^^^^^^^^^^^^^
File "/usr/lib/python3.12/multiprocessing/connection.py", line 395, in _recv
chunk = read(handle, remaining)
^^^^^^^^^^^^^^^^^^^^^^^
KeyboardInterrupt
截图
No response
还有别的吗?
No response