首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法发布应用程序或构建web,因为这个包: blue_thermal_printer:^1.1.9

无法发布应用程序或构建web,因为这个包: blue_thermal_printer:^1.1.9
EN

Stack Overflow用户
提问于 2022-01-19 13:56:48
回答 2查看 275关注 0票数 0

当我运行这个命令时

代码语言:javascript
复制
flutter run --release
flutter build web --web-renderer html

我在控制台中得到了这个错误:

代码语言:javascript
复制
Launching lib\main.dart on Infinix X656 in release mode...
/C:/Users/Bilal%20Saeed/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/blue_thermal_printer-1.1.9/lib/blue_thermal_printer.dart:34:28: Error: Type 'Registrar' not
 found.
  static void registerWith(Registrar registrar) {
                           ^^^^^^^^^
/C:/Users/Bilal%20Saeed/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/blue_thermal_printer-1.1.9/lib/blue_thermal_printer.dart:34:28: Error: 'Registrar' isn't a
type.
  static void registerWith(Registrar registrar) {
                           ^^^^^^^^^
/C:/Users/Bilal%20Saeed/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/blue_thermal_printer-1.1.9/lib/blue_thermal_printer.dart:35:24: Error: Setter not found: 'i
nstance'.
    BlueThermalPrinter.instance = BlueThermalPrinter._();
                       ^^^^^^^^


FAILURE: Build failed with an exception.

* Where:
Script 'D:\All Data\Softwares\Latest Flutter\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1005

* What went wrong:
Execution failed for task ':app:compileFlutterBuildRelease'.
> Process 'command 'D:\All Data\Softwares\Latest Flutter\flutter\bin\flutter.bat'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 3m 57s
Running Gradle task 'assembleRelease'...                          240.3s
Exception: Gradle task assembleRelease failed with exit code 1

此文件还会自动生成错误:

代码语言:javascript
复制
//
// Generated file. Do not edit.
//

// ignore_for_file: directives_ordering
// ignore_for_file: lines_longer_than_80_chars

import 'package:blue_thermal_printer/';
import 'package:cloud_firestore_web/cloud_firestore_web.dart';
import 'package:cloud_functions_web/cloud_functions_web.dart';
import 'package:connectivity_for_web/connectivity_for_web.dart';
import 'package:firebase_analytics_web/firebase_analytics_web.dart';
import 'package:firebase_auth_web/firebase_auth_web.dart';
import 'package:firebase_core_web/firebase_core_web.dart';
import 'package:firebase_messaging_web/firebase_messaging_web.dart';
import 'package:firebase_storage_web/firebase_storage_web.dart';
import 'package:fluttertoast/fluttertoast_web.dart';
import 'package:geolocator_web/geolocator_web.dart';
import 'package:google_maps_flutter_web/google_maps_flutter_web.dart';
import 'package:google_sign_in_web/google_sign_in_web.dart';
import 'package:image_picker_for_web/image_picker_for_web.dart';
import 'package:maps_launcher/maps_launcher_web.dart';
import 'package:shared_preferences_web/shared_preferences_web.dart';
import 'package:url_launcher_web/url_launcher_web.dart';
import 'package:video_player_web/video_player_web.dart';

import 'package:flutter_web_plugins/flutter_web_plugins.dart';

// ignore: public_member_api_docs
void registerPlugins(Registrar registrar) {
  BlueThermalPrinterPlugin.registerWith(registrar);
  FirebaseFirestoreWeb.registerWith(registrar);
  FirebaseFunctionsWeb.registerWith(registrar);
  ConnectivityPlugin.registerWith(registrar);
  FirebaseAnalyticsWeb.registerWith(registrar);
  FirebaseAuthWeb.registerWith(registrar);
  FirebaseCoreWeb.registerWith(registrar);
  FirebaseMessagingWeb.registerWith(registrar);
  FirebaseStorageWeb.registerWith(registrar);
  FluttertoastWebPlugin.registerWith(registrar);
  GeolocatorPlugin.registerWith(registrar);
  GoogleMapsPlugin.registerWith(registrar);
  GoogleSignInPlugin.registerWith(registrar);
  ImagePickerPlugin.registerWith(registrar);
  MapsLauncherWeb.registerWith(registrar);
  SharedPreferencesPlugin.registerWith(registrar);
  UrlLauncherPlugin.registerWith(registrar);
  VideoPlayerPlugin.registerWith(registrar);
  registrar.registerMessageHandler();
}

我也经常在飞镖分析中看到这些错误:

代码语言:javascript
复制
error: Target of URI doesn't exist: 'package:blue_thermal_printer/'. (uri_does_not_exist at [food_delivery_app] lib\generated_plugin_registrant.dart:8)
error: Undefined name 'BlueThermalPrinterPlugin'. (undefined_identifier at [food_delivery_app] lib\generated_plugin_registrant.dart:31)

然而,在调试模式下,应用程序工作正常。当我删除bluetooth_thermal_print包时,它也可以正常工作。有什么问题吗?如何用这个包发布我的应用程序?

EN

回答 2

Stack Overflow用户

发布于 2022-01-19 15:32:53

似乎没有正确安装这个插件

确保pubspec.yaml具有所列的依赖项:

代码语言:javascript
复制
dependencies:
  blue_thermal_printer: ^any

然后,您可以让它获取文件:

代码语言:javascript
复制
flutter packages get

另一方面,您正在创建一个web项目,然后安装一个插件,这可能更适合于安卓、iOS或HarmonyOS。flutter config --no-enable-web将禁用web支持,这可能(甚至很可能)是导致错误消息的原因之一。

即使某些库可以在web浏览器中提供这种功能。

没有所有抽象层,任何类型的ESC/POS都可能更容易处理。

你可能想跟进#103 ...which的问题,这只证实了我的猜测。

票数 0
EN

Stack Overflow用户

发布于 2022-01-20 09:59:52

去找这个包的开发人员。我亲自联系了他,查阅了他在pub.dev上的投资组合,并告诉了他情况。他在大约几分钟内将软件包从bluetooth_thermal_printer 1.1.9更新到1.2.0,一切又顺利地进行了一次.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70771897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档