【问题标题】:Error when launch yarn run encore dev for the first time首次启动 yarn run encore dev 时出错
【发布时间】:2018-09-28 09:14:37
【问题描述】:

我在 Symfony 3.4 项目中第一次配置 webpack.config.js 时遇到问题。 我按照 symfony 的文档安装和配置 encore,但我不知道为什么我总是出现这个错误:

$ yarn run encore dev
yarn run v1.6.0
$ [my_root_project_path]\node_modules\.bin\encore dev
Running webpack ...
ERROR  Failed to compile with 1 errors10:01:31
 error
Entry module not found: Error: Can't resolve 'web/build/app.js' in '[my_root_project_path]'
error Command failed with exit code 2.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

我的 webpack.config.js 文件是这样的:

// webpack.config.js
var Encore = require('@symfony/webpack-encore');
Encore
 .setOutputPath('web/build/')
 .setPublicPath('/build')
 .addEntry('app', 'web/build/app.js')
 .autoProvidejQuery()
 .enableSourceMaps(!Encore.isProduction())
 .cleanupOutputBeforeBuild()
;
module.exports = Encore.getWebpackConfig();

问题是否来自对 Encore 没有的文件的权限?反正我迷路了,不知道怎么办。

配置:

  • Windows 10
  • wamp 服务器
  • php 版本 5.6.31
  • Symfony 3.4
  • 纱线 1.6.0

注意: 我知道可能还有另一篇关于同类问题的帖子,但我认为目前我已经测试了所有内容并且我的问题仍然存在。我一直在听,如果您认为有一个 stackoverflow 帖子可以解决我的问题,我会让您与我分享。

【问题讨论】:

  • 当然我会继续在互联网上寻找解决方案

标签: symfony yarnpkg webpack-encore


【解决方案1】:

您的问题出在 addEntry 路径中

.addEntry('app', 'web/build/app.js')

它没有指向正确的文件。正确的语法是:

.addEntry(<name_of_the_entry>, <path_to_the_entry>)

其中 path_to_the_entry 必须指向您要在构建中添加的 js 文件,而不是直接指向您的构建路径。此文件应位于不同的文件夹中,例如'your_project_root/assets/js/your_js_file.js' 在 doc 中指定。

Encore 将在您的 web/build 文件夹中创建适当的 .js 文件(如果您在 .js 文件中添加了一个,还可能创建 .css),以便您的用户可以访问这些文件。

【讨论】:

    猜你喜欢
    • 2017-12-03
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 2018-07-16
    • 2023-03-07
    • 2018-12-12
    • 1970-01-01
    相关资源
    最近更新 更多