当前位置: 首页 > article >正文

Mars3d项目启动上的一些坑

前言

最近新入职了一家公司,公司新开了有个未来城市的项目,需要用到3D城市建模,公司老总选了Mars3d作为前端框架,项目分给我了,又是一个全新的领域,开搞吧!
下面是自己遇到的几个小问题,记录一下:

  • 1 npm install copy-webpack-plugin --save -dev 时报错

在这里插入图片描述解决办法:npm install copy-webpack-plugin --save -dev --legacy-peer-deps

  • 2 第二个小错误就是很简单的粗心了,报错代码:const path = require(‘path’)SyntaxError: Identifier ‘path’ has already been declared解决办法:检查一下代码,就是自己多写了一遍这个声明语句,把重复的代码删除就好了。

  • 3 ERROR TypeError: compilation.getCache is not a function
    在这里插入图片描述
    解决办法:出现这个错误一般是我们的webpack和copy-webpack-plugin的版本不匹配导致的,这个时候我们只需要删除自己的copy-webpack-plugin,然后安装一个低版本的即可(这可能是第一个问题安装的后遗症
    两条指令:卸载:npm uninstall copy-webpack-plugin,安装:我安装的是copy-webpack-plugin@5.0.0,我的webpack版本是

  • 4 ERROR Error: [copy-webpack-plugin] patterns must be an array
    解决办法:这个是说我们的配置 new CopyWebpackPlugin()的参数必须是一个数组,我们从官网拷贝过来的代码好像是

        new CopyWebpackPlugin({
          patterns: [
            { from: path.join(cesiumSourcePath, 'Workers'), to: path.join(config.output.path, cesiumRunPath, 'Workers') },
            { from: path.join(cesiumSourcePath, 'Assets'), to: path.join(config.output.path, cesiumRunPath, 'Assets') },
            { from: path.join(cesiumSourcePath, 'ThirdParty'), to: path.join(config.output.path, cesiumRunPath, 'ThirdParty') },
            { from: path.join(cesiumSourcePath, 'Widgets'), to: path.join(config.output.path, cesiumRunPath, 'Widgets') }
          ]
        }),

改成这样就好了

      new CopyWebpackPlugin([
          { from: path.join(cesiumSourcePath, 'Workers'), to: path.join(config.output.path, cesiumRunPath, 'Workers') },
          { from: path.join(cesiumSourcePath, 'Assets'), to: path.join(config.output.path, cesiumRunPath, 'Assets') },
          { from: path.join(cesiumSourcePath, 'ThirdParty'), to: path.join(config.output.path, cesiumRunPath, 'ThirdParty') },
          { from: path.join(cesiumSourcePath, 'Widgets'), to: path.join(config.output.path, cesiumRunPath, 'Widgets') }
        ]
      )
  • 5
    These dependencies were not found:
    @turf/turf in ./node_modules/mars3d/dist/mars3d.js
    *mars3d-cesium in ./node_modules/mars3d/dist/mars3d.js, ./src/main.js
    To install them, you can run: npm install --save @turf/turf mars3d-cesium
    这个很简单就跟着运行这条指令就好了。 npm install --save @turf/turf mars3d-cesium

  • 6 还有问题我会继续更新


http://www.kler.cn/a/5020.html

相关文章:

  • vue video重复视频 设置 srcObject 视频流不占用资源 减少资源浪费
  • 【YOLOv8杂草作物目标检测】
  • 如何在 Ubuntu 22.04 上安装 Nagios 服务器教程
  • C++ STL 中的 vector 总结
  • 《零基础Go语言算法实战》【题目 1-14】字符串的替换
  • java mail 535 Login Fail. Please enter your authorization code to login
  • day2 操作系统考点
  • 程序猿成长之路之密码学篇-AES算法介绍
  • 【Gem5】有关gem5模拟器的资料导航
  • 计算机基本知识框架
  • JAVA电子招标采购系统源码—企业战略布局下的采购
  • Maven项目混淆、瘦身、打包exe
  • 排序 堆排序_57
  • Redis缓存击穿和穿透以及雪崩
  • Shell echo 命令
  • 代码随想录算法训练营第五十八天|739. 每日温度、496.下一个更大元素 I
  • 第二十七章 纹理总结
  • @PostConstruct注解
  • 精准水位在流批一体数据仓库的探索和实践
  • elementUI使用
  • 一键卸载流氓垃圾软件,这2款软件让电脑干净无弹窗
  • 2.5 数据部分总结
  • 3月31号 上午 数据结构课程中 引出的几个算法题目
  • 合创科技C4D设计师网站大全
  • [Few-shot learning] Siamese neural networks
  • 智能驾驶芯片赛道混战:如何看待5类玩家的竞争格局?