在新的 Dart 项目中看不到 Dart 模板
Posted
技术标签:
【中文标题】在新的 Dart 项目中看不到 Dart 模板【英文标题】:Dart templates not seen in new Dart project 【发布时间】:2015-09-14 08:29:44 【问题描述】:我正在尝试将 Webstorm 用于我的 Dart 项目,因为它是推荐的。我已经安装它并将它指向 Dart sdk 和 dartium 路径。在创建新的 Dart 项目时,我只看到 Dart Web App 和 Dart Command Line App。没有聚合物模板或任何其他模板。我该怎么做才能看到这些模板。
DART 产品的相关版本:
Dart 1.11.0(参考 65704b3)开发(SDK) Dart 1.11.0 (ref 65704b3) (STABLE) DARTIUM
编辑 1(与 Gunter 的第一条评论有关)
我删除并尝试重新安装 stagehand,但出现以下错误
C:\Users\dart.user\AppData\Roaming\Pub\Cache\global_packages>pub global ac
tivate stagehand
Resolving dependencies...
+ args 0.13.2
+ collection 1.1.1
+ crypto 0.9.0
+ http 0.11.2
+ http_parser 0.0.2+7
+ path 1.3.5
+ source_span 1.1.2
+ stack_trace 1.3.3
+ stagehand 0.2.1
+ string_scanner 0.1.3+1
+ usage 1.0.0+1
Precompiling executables...
Loading source assets...
Failed to precompile stagehand:stagehand:
Unhandled exception:
Uncaught Error: Failure getting http://localhost:49681/packages/crypto/crypto.da
rt: 404 Not Found
Stack Trace:
#0 _asyncLoadError (dart:_builtin:285)
#1 _httpGet.<anonymous closure>.<anonymous closure> (dart:_builtin:228)
#2 _RootZone.runGuarded (dart:async/zone.dart:1082)
#3 _BufferingStreamSubscription._sendDone.sendDone (dart:async/stream_impl.
dart:390)
#4 _BufferingStreamSubscription._sendDone (dart:async/stream_impl.dart:399)
#5 _BufferingStreamSubscription._close (dart:async/stream_impl.dart:290)
#6 _ForwardingStream._handleDone (dart:async/stream_pipe.dart:112)
#7 _handleDone (dart:async/stream_pipe.dart:180)
#8 _RootZone.runGuarded (dart:async/zone.dart:1082)
#9 _BufferingStreamSubscription._sendDone.sendDone (dart:async/stream_impl.
dart:390)
#10 _BufferingStreamSubscription._sendDone (dart:async/stream_impl.dart:399)
#11 _DelayedDone.perform (dart:async/stream_impl.dart:614)
#12 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:711)
#13 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart
:671)
#14 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:41)
#15 _asyncRunCallback (dart:async/schedule_microtask.dart:48)
#16 _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:84)
#17 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dar
t:131)
#0 _rootHandleUncaughtError.<anonymous closure> (dart:async/zone.dart:886)
#1 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:41)
#2 _asyncRunCallback (dart:async/schedule_microtask.dart:48)
#3 _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:84)
#4 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dar
t:131)
多次尝试只会导致相同的错误。
我做了一个 pub 缓存修复,但结果是一样的。
【问题讨论】:
WebStorm 使用 Stagehand pub.dartlang.org/packages/stagehand 作为项目模板,也许你需要先激活它pub global activate stagehand
(我自己从未在 WebStorm 中使用过它)
Stagehand 已激活。
Stagehand 只有一个空的 bin 目录。我尝试激活,但收到上述问题的编辑 1 中显示的错误。
您可以尝试停用然后再次激活吗?我最近遇到了类似的问题,我认为这解决了它。
我只是更改了放置 dart-sdk 的文件夹,这就解决了问题。我也无法解释。可能某处有缓存。
【参考方案1】:
Stagehand 提供以下模板;聚合物不是其中之一。
$ stagehand
Stagehand will generate the given application type into the current directory.
usage: stagehand <generator-name>
--[no-]analytics Opt out of anonymous usage and crash reporting.
-h, --help Help!
--version Display the version for stagehand.
--author The author name to use for file headers.
(defaults to "<your name>")
Available generators:
console-full - A command-line application sample.
package-simple - A starting point for Dart libraries or applications.
server-shelf - A web server built using the shelf package.
web-angular - A web app with material design components.
web-simple - A web app that uses only core Dart libraries.
web-stagexl - A starting point for 2D animation and games.
【讨论】:
以上是关于在新的 Dart 项目中看不到 Dart 模板的主要内容,如果未能解决你的问题,请参考以下文章
在 Intellij IDEA 中创建新的 dart 项目时,在 dart 模板下找不到 Flutter Web 应用程序选项
如何在不创建新的 dart 项目的情况下运行与我的颤振项目隔离的 dart 代码?
Dart Null-Safety - 执行 dart 迁移以升级到新的 null 安全性时出现范围错误