问题描述
我将 Webpack Encore 与 Dotenv-webpack 一起使用,但出现此错误:
编译失败。
定义插件
'process.env' 的冲突值
我的 webpack.config.js:
const Dotenv = require('dotenv-webpack')
const Encore = require('@symfony/webpack-encore')
if (!Encore.isRuntimeEnvironmentConfigured()) {
Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev')
}
Encore
// ...
.addPlugin(new Dotenv({
path: './.env.local'
}))
module.exports = Encore.getWebpackConfig();
使用的版本:
"devDependencies": {
"@symfony/webpack-encore": "^1.2.0","dotenv-webpack": "^7.0.2",}
我找到了 similar issues,但我不太了解该解决方案,因此无法将此解决方案与 Symfony Encore 一起使用。
此问题的原因是什么,我该如何解决?
解决方法
我有一个类似的问题,在编译时发出警告,通过向 ignoreStub
添加 true
选项解决了这个问题。
.addPlugin(new Dotenv({
ignoreStub: true,}))
这是在 dotenv-webpack
的 7.0.0 版中引入的。
https://github.com/mrsteele/dotenv-webpack/releases/tag/v7.0.0