2017-02-13 97 views
1

我想安裝一個使用Angular 2和Webpack的AOT構建(JIT構建工作正常)。每當我試圖建立它,我得到ERROR in Could not resolve "src/app/app.module" from "src/app/app.module"。我試過除了AotPlugin之外,還移除了webpack插件,爲AotPlugin選項使用了相對/絕對路徑的每個組合,所有都沒有結果。我使用的是webpack 2.2.1,typescript 2.0.10,@ ngtools/webpack 1.2.9和節點版本6.9.4。任何幫助將是驚人的,謝謝!從webpack.configAngular 2 Webpack AOT無法解析條目模塊

摘錄:

module: { 
    rules: [ 
    { test: /\ts$/, loader: @'ngtools/webpack } 
    ] 
} 

plugins: [ 
    new webpack.NoEmitOnErrorsPlugin(), 
    new AotPlugin({ 
    tsConfigPath: './tsconfig.json', 
    entryModule: 'src/app/app.module#AppModule', 
    mainPath: 'src/main' 
    }), 
    new webpack.optimize.UglifyJsPlugin({ 
    beautify: false, 
    mangle: { 
     screw_ie8: true, 
     keep_fnames: true 
    }, 
    compress: { 
     warnings: false, 
     screw_ie8: true 
    }, 
    comments: false 
    }), 
    new ExtractTextPlugin('[name].[hash].css'), 
    new webpack.DefinePlugin({ 
    'process.env': { 
    'ENV': JSON.stringify(ENV) 
    } 
    }) 
] 

tsconfig.json

{ 
    "compilerOptions": { 
    "baseUrl": "src", 
    "target": "es5", 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "sourceMap": false, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "removeComments": false, 
    "noImplicitAny": true, 
    "suppressImplicitAnyIndexErrors": true 
    }, 
    "compileOnSave": false 
} 
+0

嘗試使用相對路徑爲:**/src目錄/應用/ app.module ** – Fals

+0

雖然這並沒有直接工作這個問題肯定與路徑有關。我詳細解答了這個問題的答案。 – peaches

回答

3

回答我的問題,一定有一個路徑問題。我一直在使用輔助函數來處理路徑,由於某種原因,在這種情況下並沒有。

輔助函數:

var path = require('path'); 

var _root = path.resolve(__dirname, '..'); 
function root(args) { 
    args = Array.prototype.slice.call(arguments, 0); 
    return path.join.apply(path, [_root].concat(args)); 
} 

使用:

entryModule: root('src', 'app', 'app.module#AppModule') 
+0

你救了我!出於某種原因,Webpack配置不喜歡相對路徑。我使用了path.resolve(__ dirname,'path') – light24bulbs

相關問題