Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Flatter中添加来自GitHub的包?_Github_Dart_Flutter_Package - Fatal编程技术网

如何在Flatter中添加来自GitHub的包?

如何在Flatter中添加来自GitHub的包?,github,dart,flutter,package,Github,Dart,Flutter,Package,我需要使用一个软件包的最新源代码,而最新的源代码尚未发布。 我应该在pubspec.yaml中写入什么内容才能在Github中获得一个包 下面的代码不起作用。它没有下载包,我也无法将其导入到源代码中 dependencies: flutter: sdk: flutter carousel_pro: git: url: https://github.com/jlouage/flutter-carousel-pro.git pubsec.yaml的示例 dep

我需要使用一个软件包的最新源代码,而最新的源代码尚未发布。 我应该在
pubspec.yaml
中写入什么内容才能在Github中获得一个包

下面的代码不起作用。它没有下载包,我也无法将其导入到源代码中

dependencies:
  flutter:
    sdk: flutter

  carousel_pro:
    git:
      url: https://github.com/jlouage/flutter-carousel-pro.git

pubsec.yaml的示例

dependencies:
  flutter:
    sdk: flutter

  carousel_pro:
    git:
      url: git://github.com/jlouage/flutter-carousel-pro.git
      ref: main
导入包的文件示例

import 'package:carousel_pro/src/carousel_pro_widgets.dart';
import 'package:flutter/material.dart';

class NewsCarousel extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return SizedBox(
      height: 200.0,
      child: WidgetCarousel(
        autoplay: false,
        pages: [],
      ),
    );
  }
}

注意:如果您的IDE没有看到该软件包,请尝试重新启动它。

上述操作对我不起作用,但将url更改为使用https会:

dependencies:
  flutter:
    sdk: flutter

  flutter_tflite:
      git:
        url: https://github.com/qookit/flutter_tflite.git
        ref: main
“main”是我感兴趣使用的分支的名称


我第一次运行“Flatter pub get”时,它也打开了一个浏览器窗口,要求我提供git凭据。

有时你生活在最前沿,需要使用尚未正式发布的软件包。也许您的包本身仍在开发中,并且正在使用其他正在开发的包。为了简化这一过程,您可以直接依赖存储在存储库中的包

dependencies:
  kittens:
    git: https://github.com/munificent/kittens.git
这里的
git
说明这个包是使用git找到的,后面的URL是可以用来克隆包的git URL

即使包repo是私有的,如果可以,也可以使用repo的SSH URL依赖于包:

dependencies:
  kittens:
    git: git@github.com:munificent/kittens.git
如果要依赖于特定的提交、分支或标记,请添加
ref
参数:

dependencies:
  kittens:
    git:
      url: git@github.com:munificent/kittens.git
      ref: some-branch
ref可以是Git允许的任何内容

Git对文件夹中的包的依赖关系

pub工具假定包位于Git存储库的根目录中。如果不是这样,请使用path参数指定位置。要在回购协议中指定其他位置,请使用
path
参数:例如:

dependencies:
  package1:
    git:
      url: git://github.com/flutter/packages.git
      path: packages/package1
路径是相对于Git回购的根的


有关更多详细信息,请参见。

我将展示此用例,其中您希望访问除主/主目录之外的分支中的特定文件夹:


  amplify_flutter:
    git:
      url: git://github.com/aws-amplify/amplify-flutter.git
      ref: null-safety-master
      path: packages/amplify_flutter/

你是否运行了
flatterpackages-get
?@GünterZöchbauer,是的。您知道github包的路径应该是哪个吗?默认导入看起来像这个“导入”包:flatter_redux/flatter_redux.dart';'。可能还有其他方法可以从github导入包吗?
.packages
文件列表
flatter carousel pro
?@GünterZöchbauer,是的。”旋转木马专业版:file:///Users/kvyrodov/Flutter/.pub-cache/git/flutter-carousel-pro-e8df71fa66dbe72fe770515737506e266d03a5fd/lib/'尝试重新启动IDE是否有办法使用库的特定发行版本?@Mehdico您可以指定所依赖的软件包的版本。如果您想了解git包,那么您可以在这里阅读更多关于它的信息—关于私有github存储库。比如说,我正在开发自己的软件包,我不想在任何地方发布它,这样也行吗?@AdnanAlshami,我不确定这个案例。但我认为,如果您在pc上有一个用于存储库的ssh密钥,那么它应该可以工作。它能工作吗?如果你已经命名了你的回购主协议,使用main而不是master