报错记录单

Spring Boot

  • 公司项目,启动后报错:

    1
    java: Lombok visitor handler class lombok.javac.handlers.HandleVal failed: java.lang.NoSuchMethodError: 'boolean com.sun.tools.javac.code.Symbol$TypeSymbol.isLocal()'
    • 尝试过什么?

      • 一开始以为是lombok版本和java编译器版本不一致,换了lombok版本没有用,说明不是
    • 最后如何解决?

      • file -> Project Structure -> Project -> SDK版本和language level设置为1.8对应版本
      • 需要注意Build -> Compiler -> Java Compiler 中的每个module里面也需要设置1.8版本
  • 之后项目又报错

    1
    2
    3
    java.lang.IllegalStateException: Cannot load configuration class: com.delin.Application
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.enhanceConfigurationClasses(ConfigurationClassPostProcessor.java:414)
    at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanFactory(ConfigurationClassPostProcessor.java:254)
    • 尝试过什么?

      • 显示的是连接池有问题
      • 基本没尝试,看了看tensorflow和问了gpt,没有给出明确答案
    • 最后如何解决?

      • 技术主管来了,原来需要连公司wifi
      • application.yml配置文件里面配置了数据库连接IP,那个IP应该就是公司的IP网络,只有连了才能访问到(计算机网络知识)
  • 启动后报错:

    1
    Error running WebApplication. Command line is too long. Shorten the command line via JAR manifest or via a classpath file and rerun
    • 错误的原因:

      • 命令行过长导致的
      • 点击顶部菜单栏中的 “File”(文件)选项。
      • 在下拉菜单中,选择 “Settings”(设置)。或者你也可以使用快捷键 “Ctrl + Alt + S” 打开设置。
      • 在弹出的设置对话框中,你将看到一个左侧的面板,其中列出了各种设置选项。
      • 找到并点击 “Build, Execution, Deployment”(构建、执行、部署)选项。这将展开一个子菜单。
      • 在子菜单中,选择 “Build Tools”(构建工具)。
      • 在右侧的窗口中,你将看到多个选项卡,包括 “Build and Run”(构建和运行)、”Gradle”、”Maven” 等。
      • 根据你的项目使用的构建工具选择相应的选项卡,例如选择 “Gradle” 或 “Maven”。
      • 在选项卡中,寻找 “Delegate IDE build/run actions to Gradle/Maven”(将 IDE 的构建/运行操作委托给 Gradle/Maven)选项。
      • 勾选 “Delegate IDE build/run actions to Gradle/Maven” 选项以启用委托功能。
      • 保存设置并关闭对话框。
    • 有效的解决办法

      • 通过 JAR Manifest 缩短命令行,并重新运行应用程序。
    • 具体步骤

      • 打开Idea,点击Edit Configuratjion
      • 选中应用模块后,点击右侧Modify options,勾选Java分类下的Shorten command line
      • 之后就会在此界面看到这个Shorten可配置选项,选中JAR manifest,Apply之后重新运行项目即可。

VUE

  • Vue模块npm install安装完依赖后,npm run dev启动服务,报错:

    1
    2
    3
    error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    • 尝试过什么?

      • tensorflow说要把node js版本降到v16
      • 还有说需要 set NODE_OPTIONS=–openssl-legacy-provider ,貌似降低安全系数?
    • 准备如何做?

      • 降低node js版本到v16,目前是v18.16.0,重新安装
  • 运行npm install 时,卡在sill idealTree buildDeps没有反应

    • 网络问题
    • 方法

Maven相关

  • maven依赖别导不进去,别再用aliyun镜像了

    • 为什么?

      • 阿里云镜像很多依赖都没有,导不进去
    • 那怎么解决?

      • 用华为云,你的apache-maven-3.8.4\conf\settings.xml配置文件下mirrors标签中添加:

        1
        2
        3
        4
        5
        6
        <mirror>
        <id>huaweicloud</id>
        <name>华为云 maven</name>
        <mirrorOf>*</mirrorOf>
        <url>https://mirrors.huaweicloud.com/repository/maven/</url>
        </mirror>
  • 建议

    • 每个企业项目都新建一个文件夹来专门存放这个项目所需要的jar包,即maven本地仓库,重新导入

      • 这样可以一定程度上保证仓库里jar包的纯净,防止因为jar包导的不完全影响其他项目
      • 这样会耗费空间
    • Git 拉取项目

      • IDEA 中 GET FROM VCS 按钮, Repository URL 下 版本控制选择Git,URL即项目git地址,再选择需要存放的地址即可,在IDEA直接进行commit 和 push,比较方便

Hexo-Blog

  • 报错 bash: hexo: command not found

    • 为什么出现上述报错:

      • 重装Node js之后,虽然配置了nodejs的环境变量,即将node.exe所在目录配置在了path中,但是git bash 博客根目录,执行hexo -clean报错,当然hexo -g / -d都会报错
    • node js重装后,之前下载的关于hexo的依赖都没了,需要重新下载

      • 执行 npm install hexo-cli -g / 接一个 npm install ?
      • 重新hexo clean / hexo g / hexo d即可

公司

  • 后台项目Bug修改

    • 数据库单表和列表数据貌似不一致

      • 为什么?

        • 数据库太过复杂,查询的列表结果和单表数据不一致,联表?
        • Service层查询逻辑也比较复杂
        • Dao层Mapper文件sql也很多,语句也很复杂
      • 如何做?

        • 需要多学,多理解,不会了就多问
        • 需要一层一层去分析调用
        • Mapper中因为sql优化所以字段查不全,需要注意Select出来的字段
      • 成果

        • 改了第一个Bug,还可以,感觉跟打游戏一样
  • Vue前端项目修改