我正在尝试使用pub install安装glmatrix
。我的操作系统是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 install fail,FormatException:不能 解析“git://github.com/pjako/glmatrix.dart.git”。“。
我用Google搜索了一段时间才找到解决方案,但却没有。请帮忙。
更新#1:
我发现了这个问题。在git:
中指定pubsec.yaml
网址时,必须有TAB /空格,如下所示。
glmatrix:
git: git://github.com/pjako/glmatrix.dart.git
这解决了FormatException
的前期问题。但是现在当我再次运行pub install
时,它会抛出错误。
运行pub install ... Pub安装失败,Git失败。
答案 0 :(得分:2)
当您确定更新时,yaml文件对空白敏感;这就是为什么你不必使用像json那样的大量花括号。 :)
我在这里看到一些可能的问题:
<强>第一强>
Glmatrix似乎没有定义自己的pubspec。参与包系统的库很多都声明了一个pubspec文件,其中定义了name属性。名称很重要,因为pub在声明依赖项时会使用它。假设您有一个名为 toast 的项目,其中包含以下简单的pubspec:
name: butter
version: 0.0.0
然后你需要像这样声明你对该项目的依赖:
dependencies:
butter:
git: git://github.com/foo/toast.git
让项目所有者进行更改或自行分叉,添加pubspec,然后在pubspec中引用fork。
<强>第二强>
Glmatrix不符合pubspec package layout conventions(您自己的项目也应该符合这一点)。虽然我认为酒吧目前可以处理不合格的布局,但未来可能不会。因此,您可以要求项目所有者修复,或者自行修改并修复它。
<强>第三强>
由于您在Windows上,请确保git位于系统PATH变量中。如果你正在使用bash shell,git会起作用,但是在你将它添加到PATH之前它不会在bash之外工作(比如来自Dart编辑器)。