智慧·快乐·成长——科技造福于人。

智乐兔

文库

  • springboot采用gradle后源码的编译针对Maven做了哪些兼容处理

    springboot采用gradle后源码的编译针对Maven做了哪些兼容处理

    springboot源码针对Maven做了一些默认处理,分别是对项目应用Maven发布能力、添加Maven仓库支持能力、默认创建Maven格式发布声明。 通过这些默认处理,如果触发了Jar打包任务,则对项目的java组件执行Maven发布操作,这些底层的操作是由gradle实现的,包括对Jar任务的定义,对java相关文件的定义。 默认支持三种类型:java类的jar包、web类的war包和Java平台级组件。gradle的世界观就是面向开发环境定义世界并驱动世界。这样下去,将出现具有”自省”能力的编译系统。 /** * A plugin applied to ...

    查看全文

  • springboot源码编译、发布和文档的处理方式

    springboot源码编译、发布和文档的处理方式

    springboot源码编译、发布和文档的处理方式是事先约定在程序里面的。springboot对其源码的处理默认执行了三次约定应用,他们分别是Java开发环境的约定、基于Maven的代码发布约定和基于ASCIIdoctor的文档生成约定。 对应的插件类源码如下: /** * Plugin to apply conventions to projects that are part of Spring Boot's build. * Conventions are applied in response to various plugins being applied. * ...

    查看全文

  • 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 ...

    查看全文

  • 几种常见的UML图标及解释

    几种常见的UML图标及解释

    1.对象(Object) 格式:|对象名:类名|,图标是一个一列两行表格,第一行按格式对象名:类名列出,第二行是对象成员区,包含域、属性、构造函数、方法和内部类等。 2.类(Class) 程序世界里,先有类的定义,后有对象的创建,刚好与现实相反,图标如下: 3.接口(Interface) 接口与类的区别是有关键字<>,用法如下: 4.库(package) 又叫包,图标是一个文件夹的样式: 5.依赖关系(Dependency) 图标是个虚线箭头,箭头指向被依赖的目标: ———————— ...

    查看全文

  • 分析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 ...

    查看全文