Ну, я создаю свое приложение, используя webpack
в производственном режиме, у меня есть выходные файлы, содержащие абсолютные пути, например:
E:/xxxx/xxxx/src/app/core/components/lib/RadioButtonGroupEntry.js
Это моя конфигурация webpack
:
resolve: {
//When require, do not have to add these extensions to file's name
extensions: ["", ".js", ".jsx"],
},
//Render source-map file for final build
//output config
output: {
path: buildPath, //Path of output file
filename: '[name]-[chunkhash].js', //Name of output file
publicPath: '/'
},
node: {
fs: 'empty'
},
plugins: [
//Minify the bundle
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'production')
}),
new webpack.optimize.UglifyJsPlugin({
compress: {
//supresses warnings, usually from module minification
warnings: false
}
}),
//Allows error warnings but does not stop compiling. Will remove when eslint is added
new webpack.NoErrorsPlugin(),
new webpack.optimize.CommonsChunkPlugin({
name: "vendor",
minChunks: Infinity,
}),
// new InlineManifestWebpackPlugin({
// name: 'webpackManifest'
// }),
new WebpackMd5Hash(),
// new ManifestPlugin(),
// new ChunkManifestPlugin({
// filename: "chunk-manifest.json",
// manifestVariable: "webpackManifest"
// }),
new HtmlWebpackPlugin({template: 'src/www/index.ejs'}),
//Transfer Files
new TransferWebpackPlugin([{from: 'www'}], path.resolve(__dirname,'src'))]
Я думаю, что мой webpack.config
испорчен, и мне нужна помощь, чтобы выяснить, что с ним не так, чтобы абсолютный путь был удален.
Спасибо.
Вы можете использовать path.dirname(path)
для относительных путей.
Возможно, вы могли бы попытаться настроить свойство выходного пути вашего объекта конфигурации webpack с помощью пути и глобального объекта узла __dirname
, как это:
output: {
path: path.resolve(__dirname, 'yourBuildFolder')
}
У меня была аналогичная проблема (я использую несколько записей), и я решил ее с помощью path.relative()
:
{
entry: {
'head': [
`./${path.relative(__dirname, 'my/source/path.js')}`,
...
]
},
...
}
У ваших файлов src есть абсолютный путь или в них есть require.resolve?