didi / mpx

Mpx,一款具有优秀开发体验和深度性能优化的增强型跨端小程序框架
https://mpxjs.cn
Apache License 2.0
3.62k stars 376 forks source link

[Bug report] mpx每次build,开发者工具报错:在项目根目录未找到 app.json #1588

Closed linking2014 closed 2 months ago

linking2014 commented 2 months ago

问题描述

  1. 问题触发的条件
    • 按官网流程创建 mpx 项目
    • 运行 npm run serve,并在小程序开发者工具中打开项目(dist/wx 文件夹)
    • 中止上面的服务,运行 npm run build,此时小程序开发者工具会报错:[app.json 文件内容错误] app.json: 在项目根目录未找到 app.json (env: macOS,mp,1.06.2407110; lib: 3.4.7)。
    • 此时必须关闭当前项目并重新打开,小程序开发者工具才可以正常预览、使用
  2. 期望的表现
    • 运行 npm run build 后可以重新加载 build 后的代码,小程序开发者工具才可以正常使用不报错
  3. 实际的表现 image image

环境信息描述
至少包含以下部分:

  1. 系统类型(Mac或者Windows)
    • Mac
  2. Mpx依赖版本(@mpxjs/core、@mpxjs/webpack-plugin和@mpxjs/api-proxy的具体版本,可以通过package-lock.json或者实际去node_modules当中查看)
    • @mpxjs/core 2.9.58
    • @mpxjs/webpack-plugin 2.9.58
    • @mpxjs/api-proxy 2.9.58
  3. 小程序开发者工具信息(小程序平台、开发者工具版本、基础库版本)
    • 小程序平台 微信小程序
    • 开发者工具版本 1.06.2407110
    • 基础库版本 3.4.7

最简复现demo
mpx-project.zip

shulaoda commented 2 months ago

我控制台也报了这个错误,但是似乎可以正常展示。 这个问题我以前在开发 Taro 小程序的时候也遇到过,你其实可以通过刷新重新编译即可,无需关闭当前项目并重新打开。

image
linking2014 commented 2 months ago

我控制台也报了这个错误,但是似乎可以正常展示。 这个问题我以前在开发 Taro 小程序的时候也遇到过,你其实可以通过刷新重新编译即可,无需关闭当前项目并重新打开。 image

不行的,mpx这种情况下只能关闭项目,然后重新打开,群里很多人都这样

mater1996 commented 2 months ago

这个问题一开始考虑的是构建产物如果不清除,会保留历史构建产物,但是目前看起来会导致开发者工具在默认打开项目的情况下报错,现都调整为不清除产物,可以更新以下版本。 https://github.com/mpx-ecology/mpx-cli/releases/tag/v2.1.16 如果有需要,可以添加 --clean参数来自动清除产物。