Angular 2 Ahead-of-Time编译器错误

时间:2016-09-06 05:32:38

标签: angular deployment

我在Windows 7 x64上,尝试按照我的Angular 2申请Ahead-of-Time compilation的说明进行操作。该应用程序通过即时编译编译并运行良好。

我已安装NPM @angular/compiler-cli@0.6.0 typescript@2.0.2 @angular/platform-server@2.0.0-rc.6@angular/compiler@2.0.0-rc.6

运行ngc时出现以下错误:

C:\websites\learn\angular2>"node_modules/.bin/ngc" -p dev
can't resolve module @angular/core/src/di/opaque_token from C:\...\dev\index.ts
TypeError: undefined is not a function
    at ReflectorHost.findDeclaration (C:\...\node_modules\@angular\compiler-cli\src\reflector_host.js:171:59)
    at StaticReflector.initializeConversionMap (C:\...\node_modules\@angular\compiler-cli\src\static_reflector.js:150:38)
    at new StaticReflector (C:\...\node_modules\@angular\compiler-cli\src\static_reflector.js:42:14)
    at Function.CodeGenerator.create (C:\...\node_modules\@angular\compiler-cli\src\codegen.js:142:31)
    at codegen (C:\...\node_modules\@angular\compiler-cli\src\main.js:7:36)
    at Object.main (C:\...\node_modules\@angular\tsc-wrapped\src\main.js:30:16)
    at Object.<anonymous> (C:\...\node_modules\@angular\compiler-cli\src\main.js:14:9)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
Compilation failed

以下是我的文件夹结构(tsconfig.json位于顶层的angular2): enter image description here

乍一看,错误似乎是similar to this one,但仔细观察就会发现我的(&#34; 未定义不是函数&#34;)是不同的。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

这与我安装的节点版本有关。

$ node --version
v0.12.7

$ npm --version
3.7.5

https://nodejs.org/en/download/下载并安装了最新的64位.msi安装程序后:

$ node --version
v4.5.0

$ npm --version
2.15.9

错误不再发生