我有一个使用聚合物的网络应用程序(不确定聚合物方面是否相关),并且我正在尝试从外部包中生成隔离。虽然我可以很好地导入包,但在 Uri.file 中使用相同的路径会导致 uri 无效。例如:
//packaged_app.dart 库 packaged_app;
main(args, message){
//do something
}
//main_app.dart
library main_app.dart;
import 'package:polymer/polymer.dart';
import 'dart:isolate';
//import 'package:packaged_app/packaged_app.dart'; (finds the correct file, but not needed)
void main(){
initPolymer();
var uri = new Uri.file('package:packaged_app/packaged_app.dart');
var rp = new ReceivePort();
Isolate.spawnUri(uri, rp.sendPort);
}
我在 uri 上尝试了许多变体,包括:
- 新 Uri.file(路径)和 - 新 Uri(路径:路径)
路径值包括:
- package:packaged_app/packaged_app.dart, - packages/packaged_app/packaged_app.dart, - ../relative/path/to/packaged_app/packaged_app.dart, 和 - /absolute/path/to/packaged_app/packaged_app.dart
一切都无济于事。如果我将 packaged_app.dart 复制到与 main_app.dart 相同的目录中,它运行良好,但感觉很脏。