3

我正在尝试使用https://github.com/dart-lang/web-ui-code-lab进行 dart 开发。如果我按照 pdf 并打开 step05,然后尝试运行 chat_server.dart,我会收到此错误(我的路径中没有空格,以防相关):

dart --enable-checked-mode bin/chat_server.dart

Unable to open file: path/to/web-ui-code-lab-master/step05/bin/packages/dart_chat/file_logger.dart'file:///path/to/dart/web-ui-code-lab-master/step05/bin/chat_server.dart': Error: line 5 pos 1: library handler failed
import 'package:dart_chat/file_logger.dart' as log;
^

我认为这意味着缺少一些依赖项,但我无法运行 pub install 因为我在公司 http 代理后面:

Running pub install ...
Pub install failed, [1] Resolving dependencies...
Timed out trying to find package "web_ui 0.2.8+6" at http://pub.dartlang.org.

因此,我开始寻找 pub 依赖解析的临时解决方法。我尝试更改 pubspec.yaml 以通过 git:// 协议而不是 http (如果不通过代理将无法解决):

name: dart_chat
description: This is a chat app written in Dart using the Dart Web UI package

dependencies:
  web_ui:
    git: git://github.com/dart-lang/web-ui.git

我使用 pub install 比以前走得更远,所以我认为它成功通过了 git 协议并试图解决 web_ui 的依赖关系,但不幸的是,这样做对 web_ui 的日志记录依赖关系失败(看起来它仍在通过 http://) :

Running pub install ...
Pub install failed, [1] Resolving dependencies...
Timed out trying to find package "logging 0.2.7" at http://pub.dartlang.org.

看起来我也无法更改 yaml 以使用 sdk 的日志记录依赖项:

logging:
    sdk: logging

因为那是与 web_ui 不兼容的来源:

Pub install failed, [1] Resolving dependencies...
Incompatible dependencies on 'logging':
- 'dart_chat' depends on it from source 'sdk'
- 'web_ui' depends on it from source 'hosted'

有没有其他方法可以使用当前的开发工具解决这个代理问题?我可以以某种方式镜像 pub.dartlang.org 吗?或者镜像每个依赖项的 git 存储库?谢谢。

4

2 回答 2

1

你说你用的是Mac。如果是笔记本电脑,为什么不在家尝试一下呢?我会将此问题通知 pub 的作者,看看他是否有任何建议。

于 2012-12-12T23:38:15.070 回答
0

目前还没有办法在 Dart 编辑器中设置代理,你可以在这个 issue 上加注星标来检查它什么时候可用。

我找到了在代理后面运行 Pub 安装/更新的解决方法:在 Windows 中,您可以访问“环境变量”并添加一个以HTTP_PROXY该值 命名的变量

https://USER:PASSWORD@my.proxy.adress:PORT
于 2012-12-12T22:46:34.283 回答