在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)

这篇具有很好参考价值的文章主要介绍了在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、问题描述

在配置flutter环境的过程中,出现了以下问题:

Windows Version (Unable to confirm if installed Windows version is 10 or greater)

在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)
在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)

二、解决问题

我已经能够重现该问题。事实上,正如@liscanso首先发现的那样,它与系统语言有关,因为没有参数的命令输出是依赖于语言的。所以我提出了一个可以帮助绕过这个问题的修复程序。systeminfo

1、把该目录下的文件替换为下面的代码(它与原点相同,但进行了一些调整):(FLUTTER-SDK-DIR)\packages\flutter_tools\lib\src\windows\windows_version_validator.dart

// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'package:process/process.dart';

import '../base/io.dart';
import '../doctor_validator.dart';

// FIX #1 - Remove everything from line 10 to 20 in original source code.

/// Validator for supported Windows host machine operating system version.
class WindowsVersionValidator extends DoctorValidator {
  const WindowsVersionValidator({required ProcessManager processManager})
      : _processManager = processManager,
        super('Windows Version');

  final ProcessManager _processManager;

  @override
  Future<ValidationResult> validate() async {

// FIX #2 - Replace 'systeminfo' by 'ver' command
    final ProcessResult result =
        await _processManager.run(<String>['ver'], runInShell: true);

    if (result.exitCode != 0) {
      return const ValidationResult(
        ValidationType.missing,
        <ValidationMessage>[],
        statusInfo: 'Exit status from running `systeminfo` was unsuccessful',
      );
    }

    final String resultStdout = result.stdout as String;

// FIX #3 - Remove brackets from output
    final String resultAdjusted = resultStdout.replaceAll('[','').replaceAll(']','');

// FIX #4 - Split the output at spaces, and get Windows version at position 3.
//          Split again at dots and get the major version at position 0.
//          Cast the output to int.
    final int winver = int.parse(resultAdjusted.split(' ').elementAt(3).split('.').elementAt(0));

    // Use the string split method to extract the major version
    // and check against the [kUnsupportedVersions] list
    final ValidationType windowsVersionStatus;
    final String statusInfo;

// FIX #5 - Check if Windows major version is greater than 10.
//          Succeeds if true.
    if (winver >= 10) {
      windowsVersionStatus = ValidationType.installed;
      statusInfo = 'Installed version of Windows is version 10 or higher';
    } else {
      windowsVersionStatus = ValidationType.missing;
      statusInfo =
          'Unable to confirm if installed Windows version is 10 or greater';
    }

    return ValidationResult(
      windowsVersionStatus,
      const <ValidationMessage>[],
      statusInfo: statusInfo,
    );
  }
}

2、删除文件。(FLUTTER-SDK-DIR)\bin\cache\flutter_tools.stamp/
3、再跑一次。flutter doctor
OK,问题解决!
在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)

三、解决问题的原理

基本上,我改变了 Flutter 检查 Windows 版本的方式,通过分析快速、更高效的输出,而不是检查长期命令中依赖于语言的输出。这是在空格字符处拆分输出,获取第四个值(位置 3),在点处再次拆分,将第一个值(位置 0)转换为 int 并检查它是否大于或等于 10 的问题。无需正则表达式。versysteminfo

也许这里的一些贡献者可以测试我的解决方案并合并代码,因此不再需要手动解决方法。

四、引用原文

issues - Cantasura的评论。文章来源地址https://www.toymoban.com/news/detail-505379.html

到了这里,关于在配置Flutter环境遇到:× Windows Version (Unable to confirm if installed Windows version is 10 or greater)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Kibana启动报错】Unable to retrieve version information from Elasticsearch nodes.

    提示:这里简述项目相关背景: 使用docker单机安装elasticsearch后再安装kibana时找不到es 提示:这里描述项目中遇到的问题: 具体报错信息 es在启动时设置了密码开启了安全验证,导致kibana没访问到,取消安全验证就可让kibana找到es,由于我是学习所用,所以加不加安全验证无

    2024年02月08日
    浏览(55)
  • Ubuntu遇到错误: E: Unable to locate package

    对于 Ubuntu 操作系统和 apt-get 包管理器,以下是一些常见的解决方法:行 sudo apt clean 命令可能有助于解决问题。感谢您的指正。 sudo apt clean 命令用于清理本地软件包缓存。当软件包列表或索引出现问题时,清理缓存可以帮助确保您从软件源获取最新的正确数据。 执行以下步

    2024年02月05日
    浏览(42)
  • docker启动Kibana报错:Unable to retrieve version information from Elasticsearch nodes

    背景:macbookpro m2安装了docker desktop,然后在docker desktop上安装elasticsearch、kibana、logstash,版本都是7.17.6 基本参数如下 笔记本型号 macbookpro m2 elasticsearch版本 7.17.6 kibana版本 7.17.6 logstash版本 7.17.6 elasticsearch的配置如下 kibana的配置如下(报错时的配置) ip配置的是localhost kibana的配

    2024年03月27日
    浏览(126)
  • [疑难杂症]Kibana报错:Unable to retrieve version information from Elasticsearch nodes

            在使用Kibana连接ElasticSearch时,在ElasticSearch已经启动的情况下,再去启动Kibana,结果报错:          启动Kibana,我是已经将Kibana.yml中的elasticsearch.hosts修改为:[\\\"http://127.0.0.1:9200\\\"],使用的是localhost,如下图所示。          其中elasticsearch中的elasticsearch.yml中的netw

    2024年02月11日
    浏览(57)
  • 在 Windows 操作系统上安装和配置 Flutter 开发环境

    在 Windows 操作系统上安装和配置 Flutter 开发环境 系统配置要求 为了成功安装和运行 Flutter,确保您的开发环境满足以下基本需求: 操作系统:Windows 7 SP1 或更高版本。 处理器:支持 64 位的架构。 磁盘空间:至少预留 2GB 的磁盘空间用于安装 Flutter SDK 及其依赖项。 工具与软

    2024年01月22日
    浏览(59)
  • 遇到:java.lang.reflect.InaccessibleObjectException: Unable to make 错误应该如何解决

    遇到 \\\"java.lang.reflect.InaccessibleObjectException: Unable to make...\\\" 错误是由于Java的反射机制无法访问或调用一个非公共的方法、字段或构造函数所引发的异常。这是由于Java的安全管理器或访问控制机制限制了对非公共成员的访问。 要解决这个问题,你可以尝试以下方法: 检查访问修

    2024年02月09日
    浏览(48)
  • 遇到:java.lang.reflect.InaccessibleObjectException: Unable to make错误应该如何解决

    遇到 \\\"java.lang.reflect.InaccessibleObjectException: Unable to make\\\" 错误是因为你的代码尝试访问了一个不可访问的对象或方法。这通常会发生在使用反射机制时,尝试访问私有或受限制的成员时。要解决这个问题,你可以考虑以下几个步骤: 检查访问修饰符:检查你尝试访问的对象或方

    2024年02月07日
    浏览(61)
  • 安装flutter时遇到:has been compiled by a more recent version of the Java Runtime (class file version 55.0

    这个问题困扰了我一天   当我试着跟着内容提示进行授权认证时  ✗ Android license status unknown.       Run `flutter doctor --android-licenses` to accept the SDK licenses.       See https://flutter.dev/docs/get-started/install/macos#android-setup for more details 当我输入了这 \\\' flutter doctor --android-licenses \\\' 时 遇到

    2024年02月16日
    浏览(46)
  • 几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK

    几个Flutter常见诊断错误与解决 jcLee95:https://blog.csdn.net/qq_28550263 https://blog.csdn.net/qq_28550263/article/details/132869987 问题描述 原因分析 这个错误表示找不到Android SDK。可能的原因是Android Studio没有安装或者安装路径没有正确配置。 解决办法 问题描述 原因与解决 这个错误信息表明

    2024年02月04日
    浏览(56)
  • 【Android-ChatGPT】安装Android Studio遇到Unable to access Android SDK add-on list的错误【亲测解决】

    【问题】 安装Android Studio遇到Unable to access Android SDK add-on list的错误。 【解决方案】 这个一般是没有设置代理造成的,点击setup proxy进行代理设置。 点击Android Studio - Preferences,在 Appearance Behavior的System Settings下,选择 HTTP Proxy,第二个自动代理检测,代理地址写, http://mirro

    2024年02月07日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包