Ubuntu下使用WINE运行MinecraftInstaller.exe失败求助
嘿,别慌,我帮你拆解下这个问题~你遇到的核心错误是System.IO.FileNotFoundException,提示找不到Windows.Foundation.UniversalApiContract这个组件,再加上一堆HID相关的fixme提示,本质是Wine对UWP版本的Minecraft安装包支持不完善,再加上可能你的Wine版本太旧或者环境配置有问题,给你几个可行的解决思路:
一、先搞定Wine本身的版本和环境
你说忘了从哪下载的Wine,大概率是系统自带的旧版本(Ubuntu仓库里的Wine版本通常偏旧),旧版本对UWP应用的支持很差,建议先清理现有Wine,安装官方最新版:
- 卸载旧Wine:
sudo apt remove --purge wine* sudo apt autoremove && sudo apt autoclean - 安装官方稳定版/测试版Wine:
- 先启用32位架构(Wine必须依赖):
sudo dpkg --add-architecture i386 - 接着按照官方步骤导入密钥、添加源,然后安装
wine-stable(稳定版)或者wine-staging(带更多兼容补丁的测试版,更适合跑UWP程序)。
- 先启用32位架构(Wine必须依赖):
二、创建干净的Wine前缀环境
旧的Wine环境可能残留了一些冲突组件,新建一个独立的环境专门跑Minecraft:
WINEPREFIX=~/.minecraft-wine winecfg
运行这个命令后会弹出Wine配置窗口,把Windows版本改成Windows 10或者Windows 11(UWP应用需要较新的系统版本支持),然后点确定保存。
三、安装UWP相关依赖组件
用winetricks(Wine的工具集)安装缺失的UWP组件:
- 先安装winetricks:
sudo apt install winetricks - 安装UWP核心组件:
WINEPREFIX=~/.minecraft-wine winetricks windowsfoundation uwpbase
安装过程中如果有弹窗提示,一路默认确认就行。
四、更简单的替代方案:直接用Linux原生Java版Minecraft
其实Minecraft官方有原生Linux版本,完全不用Wine折腾!你可以直接下载Java版的启动器,不管是.deb安装包还是tar.gz压缩包,安装后就能直接运行,兼容性比Wine跑UWP版好太多,这也是我最推荐的方法~
另外提一句,那些fixme:hid:handle_IRP_MN_QUERY_ID的提示是Wine对某些HID设备(比如游戏手柄)的支持还没完善,一般不会导致安装失败,不用太在意。
备注:内容来源于stack exchange,提问作者AShingo

