zoukankan      html  css  js  c++  java
  • 搭建Spring-boot项目问题梳理(五)

    前言

    本地搭建开发环境时遇到的问题整理。

    一农险赔付率项目

    前端:参看链接:https://www.cnblogs.com/szrs/p/14978447.html

    后台:

    从git上克隆项目
    添加环境变量-DenvironmenTypeCode=devFrez
    修改redis密码,远程可以访问到,本地有防火墙。

    二、监控项目

    1.1前端

    1.1.1步骤

    本地需要安装nodejs;如果是通过公司的网络可能还需要设置代理;
    idea通过git克隆项目到本地;切换分支devtest上。
    将node_modules放到项目的根路径。
    配置idea的vue开发环境;
    npm install
    npm run dev启动项目

    1.1.2问题

    1、无法下载依赖包;

    解决:先用热点下载好。。。。。再用公司的网。(因为公司网络设置了,访问不了github,配置了代理也不好使。。变通解决)

    1.2后端

    1.2.1步骤

    1、通过git克隆项目到本地;切换分支devtest。
    2、查看pom.xmL文件;配置setting.xml文件。
    3、查看application.yml文件。
      4、报错解决:添加环境变量-Djasypt.encryptor.password=asd
    
    

    1.2.2问题

    1、报错:

    Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.]
    [2021-08-18 16:56:55.834] [main] [ERROR] [TID: N/A] [LAPTOP-MHHBQEIO/11.204.117.183] [] [o.s.b.diagnostics.LoggingFailureAnalysisReporter] [] [] [] [
    
    ***************************
    APPLICATION FAILED TO START
    ***************************
    
    Description:
    
    Failed to bind properties under 'spring.datasource.druid.hdr.password' to java.lang.String:
    
        Reason: Required Encryption configuration property missing: jasypt.encryptor.password
    
    Action:
    
    Update your application's configuration

    原因:密码设置了加密。

    配置文件截图:

     解决:添加环境变量

    -Djasypt.encryptor.password=asd

    node-sass与本机安装的nodejs版本不和,重新下载。
    npm rebuild node-sass

     2、安装mysql数据库

    现在都用最新的Mysql版本了,直接从官网下一个。

    官网:去Mysql官网找个安装包,https://dev.mysql.com/downloads/windows/installer/8.0.html(可以注册一个账号,如果嫌麻烦不想注册,左下角有个跳过的按钮)

     我安装的是最新版本的

    安装过程参看链接:

    https://gblfy.blog.csdn.net/article/details/108033816

    https://blog.csdn.net/weidong_y/article/details/79763756

    安装完这个版本之后,链接maysql数据库还是报错:

    Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:

    原因如下:参看了链接:https://blog.csdn.net/qq_37924905/article/details/109111934

    MySQL版本和驱动包不兼容的问题。

    原因:
    mysql驱动是5.0+版本的,而连接的数据库版本是8.0+版本的,所以连接不上。
    
    解决办法:
    
    1.改连接数据库与mysql驱动版本一致的5.0+版本
    
    2.改mysql驱动为8.0+版本
    
    这里要注意,如果将mysql驱动改为8.0+版本,则还要改驱动的类名,加cj字段
    
    把驱动的类名改为:
    driver="com.mysql.cj.jdbc.Driver";

    我本地项目的配置是:

     明显用的版本与我安装的Mysql版本不一致。

    搜索了下我安装的对应如下驱动,修改两个配置文件,问题解决。:https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.21

     3、解决了上面那的的问题后,出现如下报错:

    SQLSyntaxErrorException: SELECT command denied to user ‘XXXXX‘@‘xxxx‘ for table ‘XXXX‘ 
    Access denied for user 'oauth'@'localhost' to database 'reinsmonitor'
    拒绝用户“oauth”@“localhost”访问数据库“reinsmonitor”

    如下图:

    因为没有给用户oauth配置权限导致。点击用户,新增权限问题解决。

     或者通过命令赋予新用户权限:

    grant select,insert,update,delete on reinsmonitor.* to oauth@localhost identified by "oauth";
    --赋予所有权限
    
    grant all on *.* to dba@localhost;
    
    --撤销所有权限
    revoke all on *.* from dba@localhost;

    3、命令行太长导致启动失败 

    Error running 'ReinsMonitorBackend': Command line is too long. Shorten command line for ReinsMonitorBackend or also for Spring Boot default configuration.

    原因:该选项控制如何将classpath传递给JVM:通过命令行或通过文件。大多数操作系统都有最大的命令行限制,当它超过时,IDEA将无法运行您的应用程序。 当命令行长于32768个字符时,IDEA建议您切换到动态类路径。长类路径被写入文件,然后由应用程序启动器读取并通过系统类加载器加载。 如果您对实施细节感兴趣,可以查看IDEA社区版的源代码,JdkUtil.java文件,setupJVMCommandLine方法。

    解决:

    参看链接:https://www.cnblogs.com/nanmu0/p/12518412.html  https://blog.csdn.net/ZXJ_1223/article/details/80611089

    类似问题参看链接:https://blog.csdn.net/qq719779232/article/details/114678903

    问题描述:增加了个jar包,发现项目就启动不起来了:

    Error running 'EdenServerSystemApplication': Command line is too long. Shorten command line for EdenServerSystemApplication or also for Spring Boot default configuration

     

    三、拓展

    1、Mysql用户的连接名是啥意思:

      在MySQL建立连接的时候就会发现有连接名这样的东西,这个实际上只是方便你自己去区分哪一个Mysql,不是数据库。

    四、本地搭建监控项目的设置

    4.1前端

    直接用idea打开即可(其他配置步骤不变)。

    4.2后端

    除了原来的配置,还需要将pom.xml中的私服注掉;

    在application.xml中新增

    mysql1:
            url: jdbc:mysql://127.0.0.1:3306/reinsmonitor?serverTimezone=GMT%2B8&characterEncoding=utf-8
            name: reinsopmysql
            username: oauth
            password: oauth
            driver-class-name: com.mysql.cj.jdbc.Driver
            #filters: stat
            maxActive: 20
            initialSize: 5
            minIdle: 1
            timeBetweenEvictionRunsMillis: 60000
            minEvictableIdleTimeMillis: 300000
            testWhileIdle: true
            validationQuery: select 1
            testOnBorrow: false
            testOnReturn: false
            poolPreparedStatements: false

    并将调整如下:

    这样就可以在本地启动了。

    如果错过太阳时你流了泪,那你也要错过群星了。
    在所有的矛盾中,要优先解决主要矛盾,其他矛盾也就迎刃而解。
    不要做个笨蛋,为失去的郁郁寡欢,聪明的人,已经找到了解决问题的办法,或正在寻找。
  • 相关阅读:
    django之路由层(反向解析)总结
    django 路由层(反向解析)03
    Django 文件配置、pycharm及django连接数据库、表的增删改查 总结
    Django 之 文件配置、pycharm及django连接数据库、创表及表的增删改查02
    Django框架简介(1)
    编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;
    Python语法之垃圾回收机制
    前端js之BOM和DOM操作
    前端js之JQuery
    获取当前应用信息
  • 原文地址:https://www.cnblogs.com/szrs/p/15158028.html
Copyright © 2011-2022 走看看