0

我正在尝试glmatrix使用 pub install 进行安装。我的操作系统是 Windows 7,我安装了 Git。

这是我的pubspec.yaml

name:  WebGLTut1
description:  A sample application
dependencies: 
glmatrix: 
git: git://github.com/pjako/glmatrix.dart.git

当我运行时,pub install我收到以下错误:

运行 pub install ... Pub 安装失败,FormatException:无法解析“git://github.com/pjako/glmatrix.dart.git”。

我用谷歌搜索了一段时间以找到解决方案,但找不到。请帮忙。

更新#1: 我发现了问题。如下指定git:url时必须有一个 TAB/空格。pubsec.yaml

    glmatrix:
      git: git://github.com/pjako/glmatrix.dart.git

这样就解决了之前的问题FormatException。但是现在当我pub install再次运行时,它会抛出错误。

运行 pub install ... Pub 安装失败,Git 失败。

4

1 回答 1

2

当您确定更新时,yaml 文件对空格敏感;这就是为什么你不必使用很多像 json 这样的花括号。:)

我在这里看到了一些可能的问题:

第一的

Glmatrix 似乎没有定义自己的 pubspec。参与包系统的库会声明一个定义了 name 属性的 pubspec 文件。该名称很重要,因为 pub 在您声明依赖项时使用它。假设您有一个名为toast的项目,其中包含以下简单的 pubspec:

name: butter
version: 0.0.0

然后你需要像这样声明你对那个项目的依赖:

dependencies:
  butter:
    git: git://github.com/foo/toast.git

让项目所有者自己进行更改或分叉,添加 pubspec,然后在您的 pubspec 中引用您的分叉。

第二

Glmatrix 不符合pubspec 包布局约定(您自己的项目也应符合此)。尽管我相信 pub 目前可能会处理不合格的布局,但将来可能不会。同样,您可以要求项目所有者修复,也可以自行分叉并修复。

第三

由于您在 Windows 上,请确保 git 在您的系统 PATH 变量中。如果你使用的是 bash shell,git 可以工作,但在你将它添加到你的 PATH 之前,它不会在 bash 之外工作(比如从 Dart 编辑器)。

于 2012-10-07T12:05:35.407 回答