You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native执行run-android报错:未指定终端应用无法启动服务器

解决React Native运行Android时"Cannot start server in new window because no terminal app was specified"错误

以下是几种可行的解决方案:

1. 手动启动Metro服务再运行项目

直接规避自动新开终端窗口的需求:

  • 打开一个终端,进入项目根目录,执行:npx react-native start
  • 保持该终端窗口运行,再打开另一个终端进入项目根目录,执行:npx react-native run-android

2. 设置环境变量指定终端程序

根据操作系统配置对应终端路径:

Windows系统

  • 打开系统环境变量设置,新增名为REACT_TERMINAL的变量,值设为终端程序路径,例如:
    • 命令提示符:C:\Windows\System32\cmd.exe
    • PowerShell:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
  • 设置完成后重启所有终端窗口,再重新执行npx react-native run-android

macOS系统

  • 在终端执行以下命令(根据使用的终端选择):
    • 系统自带Terminal:export REACT_TERMINAL="/Applications/Utilities/Terminal.app"
    • iTerm2:export REACT_TERMINAL="/Applications/iTerm.app"
  • 若要永久生效,将上述命令添加到~/.zshrc或~/.bash_profile文件中,再执行source ~/.zshrc(对应你的profile文件)刷新配置

Linux系统

  • 根据桌面环境选择对应终端,在终端执行:
    • GNOME终端:export REACT_TERMINAL="gnome-terminal"
    • Konsole(KDE):export REACT_TERMINAL="konsole"
    • Xfce终端:export REACT_TERMINAL="xfce4-terminal"
  • 可将命令添加到~/.bashrc或~/.zshrc中实现永久生效

3. 修改React Native项目配置文件

在项目根目录的react-native.config.js文件中添加终端配置(无此文件则新建):

module.exports = {
  terminal: '<你的终端程序路径或命令>',
};

示例:Windows填"C:\\Windows\\System32\\cmd.exe",macOS填"/Applications/Utilities/Terminal.app",Linux填"gnome-terminal"

4. 检查终端程序可用性

确认指定的终端程序已正确安装,路径无误:

  • Windows可在运行窗口输入路径,验证能否打开终端
  • macOS/Linux可在终端输入终端命令(如gnome-terminal),验证能否启动新窗口

内容的提问来源于stack exchange,提问作者tired

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:01:00