智乐兔

技术分享

  • springboot编译任务里有关资源抽取的实现逻辑

    springboot编译任务里有关资源抽取的实现逻辑

    资源抽取是指对类似*.properties等属性配置资源文件的提取,springboot团队对springboot源码的资源提取机制做了专门的实现。 springboot编译任务对资源抽取的实现逻辑: public class ExtractResources extends DefaultTask { /** 定义一个占位符助手:前后缀分别为${、} */ private final PropertyPlaceholderHelper propertyPlaceholderHelper = new PropertyPlaceholderHelper("${", "}"); ...

    查看全文

  • springboot2.5编译时对java程序的约定处理

    springboot2.5编译时对java程序的约定处理

    package org.springframework.boot.build; class JavaConventions { void apply(Project project) {// 任务执行过程,对java基础插件展开一系列处理 project.getPlugins().withType(JavaBasePlugin.class, (java) -> { project.getPlugins().apply(TestFailuresPlugin.class); // 测试失败处理 configureSpringJavaFormat(projec ...

    查看全文

  • 分析springboot2.5启动gradle编译任务的启动器类

    分析springboot2.5启动gradle编译任务的启动器类

    这是springboot2.5启动gradle编译任务的启动器类: package org.springframework.boot.build.starters; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.util.Arrays; import java.util.HashMap; import java.util.Map; im ...

    查看全文

  • 一张图看懂springboot使用gradle兼容maven的构建实现

    一张图看懂springboot使用gradle兼容maven的构建实现

    这是springboot最新版对gradle的封装扩展,主要是兼容了Maven的构建。仔细看这张图,可以发现中心包是starters启动器包。通过启动器做了3件事: 1.部署操作 主要是针对maven格式做的兼容实现。这里面包括Maven仓库的定义和Maven插件的定义,还定义了bom和约束,然后定义了自动配置。 2.设置classpath 主要是确定所有类和资源存在的路径。 3.约定设置 首先是java类约定,包括可选包的设置、测试类和资源配置文件的提取。 其次是Maven格式的发布约定设置,保证输出Maven仓库兼容的构建。 最后是文档模块的约定设置,包括组件工厂和脚手架的设置。 另外, ...

    查看全文

  • java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException异常解决

    java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException异常解决

    原因是openjdk是有问题的,缺jar和类。 解决办法: 1、将标准JDK中的rt.jar加到项目的lib目录中。 这种方案可能存在兼容问题,直接的方法是按照正式版jdk,早期版本的jdk1.8,但是不建议商用。 2、替换jar,将jcaptcha-1.0.jar 替换成jcaptcha-all-1.0-RC6.jar。 修改配置文件: <bean id="captchaService" class="com.octo.captcha.service.multitype.GenericManageableCaptchaService"> <constructor- ...

    查看全文

  • centos8 安装jdk1.8需要注意的问题

    centos8 安装jdk1.8需要注意的问题

    1.不要安装openjdk,这玩意有毛病(缺jar,具体可以拿标准版比对),1.8jdk直接从oracle下载RPM安装包,下载路径:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html。 找到Linux x64版本下载 下载时需要登录oracle账户。 2.上传到centos 8 服务器上,开始安装前,卸载掉可能存在的java残余: 检查命令: rpm -qa | grep jdk rpm -qa | grep gcj rpm -qa | grep java 清除命令: rpm -qa | gr ...

    查看全文

  • HPE Proliant (HP)微型服务器 Gen10 plus 定制攻略

    HPE Proliant (HP)微型服务器 Gen10 plus 定制攻略

    自HP microserver gen 8发布以来,惠普可以说是找到了服务器市场的新大陆,那就是超低能耗微型服务器,特别适合个人、微型企业。 下面就是HP gen8的靓照,服务器的品质,连续运行二年没问题(亲测): HP gen 8的不足之处是噪音太大,另外DIY空间不足,毕竟有16G的内存限制。随后,HP推出了32G内存的gen 10,应该说是gen 8的升级版: 玩家,对此次升级并不感冒,升级有限,而且ILO功能多有争议。HP厂家很给力,紧接着推出了gen 10 plus,最大支持64G内存(DDR4,纯ECC或者非纯ECC),这就比较好看了。 gen 10 plus相对于前两代,有 ...

    查看全文

  • 关于磁盘结构损坏且无法读取怎么修复

    关于磁盘结构损坏且无法读取怎么修复

    一般硬盘出现无法读取,多是由于人为或程序造成的,具体表现是断电的时候数据IO没有结束,对硬盘来说就是磁头没有归位,造成数据结构异常或者出现坏道,操作系统不能正确识别。 多发于各种移动硬盘,故障盘一旦发现千万不要格式化,也不要做写操作,应该第一时间使用专业工具执行数据恢复。 如果不是专业人员,手头也没有专业工具,最好找专业人员或机构恢复数据。 第一步,先对故障盘做个镜像备份,防止恢复时发生不可抗力而无力回天。 第二步,用专业工具执行数据恢复,全盘恢复。 第三步,把恢复出来的数据,赶紧copy到其他磁盘里,相当于做抢救式发掘。 第四步,一旦数据抢救完成,就可以对故障盘为所欲为了,通过chkds ...

    查看全文

  • centos7 卸载jdk1.7 并用yum安装jdk1.8

    centos7 卸载jdk1.7 并用yum安装jdk1.8

    1.首先要分别检查包含jdk、java、gcj字样的包,然后删除掉; [root@localhost java]# rpm -qa | grep jdk java-1.8.0-openjdk-headless-1.8.0.275.b01-0.el7_9.x86_64 java-1.8.0-openjdk-1.8.0.275.b01-0.el7_9.x86_64 copy-jdk-configs-3.3-10.el7_5.noarch [root@localhost java]# rpm -qa | grep java | xargs rpm -e –nodeps [root@loc ...

    查看全文

  • gradle.properties配置参数解释

    gradle.properties配置参数解释

    #该资源文件放在主项目根目录,意味着主宰主项目的配置,如果在运行时加上相关配置参数,这里会被覆盖掉,配置的执行原则是就近原则 version=2.4.1-SNAPSHOT # 当设置为 true 时,Gradle 将重用来自任何以前生成的任务输出 org.gradle.caching=true # 当设置为 true 时,每个任务的单个输入属性哈希和生成缓存密钥将记录在控制台上,就是开启缓存的debug # org.gradle.caching.debug=true # 启用按需孵化配置,其中 Gradle 将尝试仅配置必要的项目。 #org.gradle.configureondemand= ...

    查看全文

  • 记一次get request请求的header头信息

    记一次get request请求的header头信息

    当我们打开一个网站时,往往先触发首页的渲染,这一步一般是一个Get请求,通过F12打开开发者模式你会在Headers标签下看到类似以下的头信息: General Request URL: http://localhost:8000/ 这是说本次请求的URL是http://localhost:8000/ Request Method: GET 请求方法为GET方式,如果是表单提交可以用post,这里不必纠结何种方法,方法是人定的,用到再说…… Status Code: 304 Not Modified 状态码不是200 ok,说明本次请求浏览器使用了上次成功请求的本地缓存,即通过与服务器握手确定 ...

    查看全文

  • mysql5.7有没有必要换成mysql8

    mysql5.7有没有必要换成mysql8

    mysql8的优点这里不展开,其功能比5.7确实强大了很多。 不过如果你的网站程序不支持8的驱动,如果你不想网站麻烦,最好不要用,主要遇到以下问题: 旧版的java程序会因为jdbc驱动问题连不上数据库; PHP程序会因为驱动原因连不上数据库; 然后,还是乖乖得换回MySQL5.7。 如果是新开发的项目,无所谓,可以直接上mysql8,毕竟centos8的内核是4.18了,各种配套开发应用比7先进不少,而且mysql8明显在用法上简捷了很多,比如: 同一个远程连接用户的密码,老版本需要设置不同的密码,而mysql 8必须一样,省掉了“此地无银三百两”的谨慎。 更多的发现,读者可以继续研究…… ...

    查看全文

在线客服
在线客服 X

售前: 点击这里给我发消息
售后: 点击这里给我发消息

智乐兔官微