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

Flutter升级至3.27.2后ssh2 v2.2.3包无法构建求助

问题修复方案

不需要降级Flutter,以下几种方法可解决ssh2 v2.2.3无法构建的问题:

方法1:手动修改ssh2插件的Android构建配置

此方法直接修改已安装的插件文件,快速解决问题:

  • 定位ssh2插件的Android构建文件:
    • Windows系统:%USERPROFILE%\.pub-cache\hosted\pub.dev\ssh2-2.2.3\android\build.gradle
    • Mac/Linux系统:~/.pub-cache/hosted/pub.dev/ssh2-2.2.3/android/build.gradle
  • 打开文件后,在android代码块内添加namespace配置,示例如下:
    android {
        namespace 'net.x11ssh.ssh2'
        compileSdkVersion 33
    
        defaultConfig {
            minSdkVersion 21
        }
    
        lintOptions {
            disable 'InvalidPackage'
        }
    }
    
  • 保存文件后,重新执行flutter run或flutter build命令

注意:后续若执行pub get或flutter pub upgrade更新插件,该修改会被覆盖,需重新操作。

方法2:使用本地修改版插件

若想避免每次更新插件都重复修改,可本地维护插件代码:

  1. 下载ssh2 v2.2.3版本的源码到本地
  2. 进入源码的android目录,修改build.gradle添加上述namespace配置
  3. 在你的Flutter项目pubspec.yaml中,将ssh2依赖改为本地路径:
    dependencies:
      ssh2:
        path: ./本地ssh2插件存放路径
    
  4. 执行flutter pub get后重新构建项目

方法3:等待插件官方更新

此问题源于Flutter 3.27.x升级了AGP版本,要求所有Android模块必须指定namespace,但ssh2 v2.2.3未适配该规则。你可以:

  • 关注pub.dev上ssh2插件的版本更新,新版本大概率会修复该问题
  • 到插件的代码仓库提交issue,提醒作者适配新的AGP要求

关于AGP Upgrade Assistant灰色不可用的问题:该工具用于升级你自身项目的AGP配置,当前问题出在第三方依赖插件上,因此助手无法识别处理,属于正常现象。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 22:47:38