项目架构调整,切换版本并发布到中央仓库
文章目录
- 0.完成运维篇maven发布到中央仓库的部分
- 1.配置server到settings.xml
- 2.配置gpg
- 1.架构调整
- 1.sunrays-dependencies(统一管理依赖和配置)
- 1.作为单独的模块
- 2.填写发布到中央仓库的配置
- 1.基础属性
- 2.基本配置
- 3.插件配置
- 3.完整的pom.xml
- 2.sunrays-framework(统一管理子模块)
- 1.继承sunrays-dependencies
- 2.发布基本配置
- 3.完整的pom.xml
- 3.其余模块都继承sunrays-framework,如果需要发布,则需要填写发布基本配置
- 2.切换版本并发布到本地仓库
- 1.修改sunrays-dependencies的版本为0.0.6
- 2.修改sunrays-framework继承的版本也为0.0.6
- 3.将sunrays-dependencies模块发布到本地仓库,直接clean install
- 4.sunrays-framework 下使用maven 插件统一切换版本为0.0.6
- 5.按照以下顺序发布到本地仓库
- 1.sunrays-framework 只发布父模块
- 2.sunrays-common 直接clean install
- 3.sunrays-common-cloud 直接clean install
- 4.sunrays-combinations 直接clean install
- 5.sunrays-common-demo 直接clean install
- 6.sunrays-combinations-demo 直接clean install
- 7.最后sunrays-framework再clean install一下
- 3.发布到远程仓库
- 1.sunrays-dependencies 直接发布 mvn clean deploy
- 2.点击publish(一定要等到变绿再进行下一步!!!)
- 3.sunrays-framework 单独发布 mvn clean deploy -N
- 4.依然点击publish(一定要等到变绿再进行下一步!!!)
- 5.发布sunrays-common-cloud模块,直接发布即可
- 6.发布sunrays-common模块,也是直接发布
- 7.全部发布后,点击Publish,等待变绿
- 4.测试使用
- 1.新建一个Maven项目
- 2.在pom中直接使用sunrays-dependencies进行依赖管理
- 3.引入依赖
- 4.application.yml 配置日志存储根目录默认./logs
- 5.SunraysApplication.java 启动类
- 6.编写controller
- 7.测试,自动打印出参入参
0.完成运维篇maven发布到中央仓库的部分
1.配置server到settings.xml
<!-- 发布到maven的中央仓库的server --><server><id>sonatype</id><username>username</username><password>password</password></server>
2.配置gpg
1.架构调整
1.sunrays-dependencies(统一管理依赖和配置)
1.作为单独的模块
<groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.5</version>
2.填写发布到中央仓库的配置
1.基础属性
<!-- 项目名 --><name>${project.groupId}:${project.artifactId}</name><!-- 简单描述 --><description>统一管理依赖,本项目的所有模块都要直接或者间接的继承该模块</description><!-- 开源地址 --><url>https://gitee.com/qyxinhua_0/sunrays-framework/tree/master/sunrays-dependencies</url>
2.基本配置
<!-- 发布到Maven中央仓库需要的配置1 --><!-- 开源协议 --><licenses><license><name>MIT License</name><url>http://www.opensource.org/licenses/mit-license.php</url></license></licenses><!-- 开发者配置 --><developers><developer><name>sxs</name><email>xxxx@126.com</email><!-- url是个人主页的地址 --><url>https://sunweb.blog.csdn.net/</url></developer></developers><!-- 源码仓库相关配置 --><scm><!-- 只读连接 --><connection>scm:git:git://gitee.com/qyxinhua_0/sunrays-framework.git</connection><!-- 开发者连接 (SSH) --><developerConnection>scm:git:git@gitee.com:qyxinhua_0/sunrays-framework.git</developerConnection><!-- 仓库浏览 URL --><url>https://gitee.com/qyxinhua_0/sunrays-framework</url></scm><!-- 发布到Maven中央仓库需要的配置1 -->
3.插件配置
<!-- 发布到Maven中央仓库需要的配置2 --><!-- central发布插件(需要配置!!!) --><plugin><groupId>org.sonatype.central</groupId><artifactId>central-publishing-maven-plugin</artifactId><version>0.5.0</version><extensions>true</extensions><configuration><!-- 这里的id是跟settings.xml中对应的! --><publishingServerId>sonatype</publishingServerId><checksums>required</checksums><!-- 发布信息(最好自定义一下) --><deploymentName>Sunrays-Framework 企业级Java脚手架</deploymentName></configuration></plugin><!-- 下面几个都是通用的 --><!-- maven-source-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.2.1</version><executions><execution><id>attach-sources</id><goals><goal>jar-no-fork</goal></goals></execution></executions></plugin><!-- maven-javadoc-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><version>3.4.1</version><!-- 支持三个自定义标签 --><configuration><additionalOptions><arg>-tag</arg><arg>Author:a:"Author"</arg><arg>-tag</arg><arg>Create:a:"Create"</arg><arg>-tag</arg><arg>Version:a:"Version"</arg></additionalOptions></configuration><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions></plugin><!-- maven-gpg-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-gpg-plugin</artifactId><version>3.2.4</version><executions><execution><id>sign-artifacts</id><phase>verify</phase><goals><goal>sign</goal></goals></execution></executions></plugin>
3.完整的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.5</version><!-- 项目名 --><name>${project.groupId}:${project.artifactId}</name><!-- 简单描述 --><description>统一管理依赖,本项目的所有模块都要直接或者间接的继承该模块</description><!-- 开源地址 --><url>https://gitee.com/qyxinhua_0/sunrays-framework/tree/master/sunrays-dependencies</url><!-- <packaging>pom</packaging> 被设置为 pom 时,这表示该项目是一个 管理依赖的项目 或 聚合项目 --><packaging>pom</packaging><properties><!-- 指定编译版本 --><java.version>1.8</java.version><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><!-- 指定版本号 --><lombok.version>1.18.16</lombok.version><spring-boot.version>2.4.2</spring-boot.version><spring-cloud.version>2020.0.1</spring-cloud.version><spring-cloud-alibaba.version>2021.1</spring-cloud-alibaba.version><druid.version>1.2.8</druid.version><mybatis-plus.version>3.5.3</mybatis-plus.version><transmittable-thread-local.version>2.12.4</transmittable-thread-local.version><mapstruct.version>1.4.2.Final</mapstruct.version><minio.version>8.5.14</minio.version><okhttp.version>4.11.0</okhttp.version><javaparser.version>3.25.4</javaparser.version><servlet-api.version>2.5</servlet-api.version><java-dotenv.version>5.2.2</java-dotenv.version></properties><!-- 统一指定版本 --><dependencyManagement><dependencies><!-- Spring Boot --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><!-- 下面两个配置表示导入spring-boot-dependencies的dependencyManagement的版本 --><type>pom</type><scope>import</scope></dependency><!-- Spring Cloud --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><!-- Spring Cloud Alibaba --><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring-cloud-alibaba.version}</version><type>pom</type><scope>import</scope></dependency><!-- druid连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>${druid.version}</version></dependency><!-- mybatis-plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>${mybatis-plus.version}</version></dependency><!-- transmittable-thread-local --><dependency><groupId>com.alibaba</groupId><artifactId>transmittable-thread-local</artifactId><version>${transmittable-thread-local.version}</version></dependency><!-- mapstruct --><dependency><groupId>org.mapstruct</groupId><artifactId>mapstruct</artifactId><version>${mapstruct.version}</version></dependency><dependency><groupId>org.mapstruct</groupId><artifactId>mapstruct-processor</artifactId><version>${mapstruct.version}</version></dependency><!-- minio --><dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>${minio.version}</version></dependency><!-- okhttp必须升级到这个版本 --><dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>${okhttp.version}</version></dependency><!-- javaparser解析java代码,读取指定方法 --><dependency><groupId>com.github.javaparser</groupId><artifactId>javaparser-core</artifactId><version>${javaparser.version}</version></dependency><!-- SpringBoot2.4.2对应的Servlet的API --><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>${servlet-api.version}</version></dependency><!-- 可以使用.env文件提前加载配置,确保数据安全 --><dependency><groupId>io.github.cdimascio</groupId><artifactId>java-dotenv</artifactId><version>${java-dotenv.version}</version></dependency></dependencies></dependencyManagement><!--指定通用依赖--><dependencies><!-- lombok --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!-- mapstruct --><dependency><groupId>org.mapstruct</groupId><artifactId>mapstruct</artifactId></dependency><dependency><groupId>org.mapstruct</groupId><artifactId>mapstruct-processor</artifactId></dependency><!-- commons-lang3 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency><!-- gson --><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId></dependency></dependencies><!-- 阿里云仓库,在父模块中配置仓库,可以使得所有子模块自动继承这个配置,这样在多模块项目中,每个模块无需单独配置仓库信息,便于管理和维护。 --><repositories><repository><id>central</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><layout>default</layout><!-- 是否开启发布版构件下载 --><releases><enabled>true</enabled></releases><!-- 是否开启快照版构件下载 --><snapshots><enabled>true</enabled></snapshots></repository></repositories><!-- 发布到Maven中央仓库需要的配置1 --><!-- 开源协议 --><licenses><license><name>MIT License</name><url>http://www.opensource.org/licenses/mit-license.php</url></license></licenses><!-- 开发者配置 --><developers><developer><name>sxs</name><email>xxx.com</email><!-- url是个人主页的地址 --><url>https://sunweb.blog.csdn.net/</url></developer></developers><!-- 源码仓库相关配置 --><scm><!-- 只读连接 --><connection>scm:git:git://gitee.com/qyxinhua_0/sunrays-framework.git</connection><!-- 开发者连接 (SSH) --><developerConnection>scm:git:git@gitee.com:qyxinhua_0/sunrays-framework.git</developerConnection><!-- 仓库浏览 URL --><url>https://gitee.com/qyxinhua_0/sunrays-framework</url></scm><!-- 发布到Maven中央仓库需要的配置1 --><!-- 构建项目通用配置 --><build><!-- maven的编译插件(配置注解处理器) --><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><!-- maven编译插件版本号 --><version>3.8.1</version><configuration><!-- 配置注解处理器(比如Lombok和MapStruct) --><annotationProcessorPaths><!-- Lombok 注解处理器 --><path><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version></path><!-- MapStruct 注解处理器 --><path><groupId>org.mapstruct</groupId><artifactId>mapstruct-processor</artifactId><version>${mapstruct.version}</version></path><!-- 只要配置了annotationProcessorPaths就必须配置,否则自定义starter的yml没有提示!!! --><path><groupId>org.springframework.boot</groupId><artifactId>spring-boot-configuration-processor</artifactId><version>${spring-boot.version}</version></path></annotationProcessorPaths></configuration></plugin><!--多模块Maven项目统一修改版本号--><plugin><groupId>org.codehaus.mojo</groupId><artifactId>versions-maven-plugin</artifactId><version>2.8.1</version><configuration><generateBackupPoms>false</generateBackupPoms></configuration></plugin><!-- 发布到Maven中央仓库需要的配置2 --><!-- central发布插件(需要配置!!!) --><plugin><groupId>org.sonatype.central</groupId><artifactId>central-publishing-maven-plugin</artifactId><version>0.5.0</version><extensions>true</extensions><configuration><!-- 这里的id是跟settings.xml中对应的! --><publishingServerId>sonatype</publishingServerId><checksums>required</checksums><!-- 发布信息(最好自定义一下) --><deploymentName>Sunrays-Framework 企业级Java脚手架</deploymentName></configuration></plugin><!-- 下面几个都是通用的 --><!-- maven-source-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.2.1</version><executions><execution><id>attach-sources</id><goals><goal>jar-no-fork</goal></goals></execution></executions></plugin><!-- maven-javadoc-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><version>3.4.1</version><!-- 支持三个自定义标签 --><configuration><additionalOptions><arg>-tag</arg><arg>Author:a:"Author"</arg><arg>-tag</arg><arg>Create:a:"Create"</arg><arg>-tag</arg><arg>Version:a:"Version"</arg></additionalOptions></configuration><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions></plugin><!-- maven-gpg-plugin --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-gpg-plugin</artifactId><version>3.2.4</version><executions><execution><id>sign-artifacts</id><phase>verify</phase><goals><goal>sign</goal></goals></execution></executions></plugin></plugins><resources><!-- 配置资源文件,这里主要是指 src/main/resources 目录 --><resource><directory>src/main/resources</directory><!-- 配置了这个,则 Maven 的环境变量就可以填充到 application-xxx.yml 中(用 $ 符号取),可用于环境隔离 --><filtering>true</filtering></resource><!-- 可选:如果项目中有需要打包的 XML 文件,可以添加这部分配置 --><resource><directory>src/main/java</directory><includes><include>**/*.xml</include></includes></resource></resources><!-- 统一指定打包插件版本(与SpringBoot一致) --><pluginManagement><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version></plugin></plugins></pluginManagement></build><!-- maven的环境变量env-flag的值为具体的值 --><profiles><!-- 开发 --><profile><!-- id(不重复即可) --><id>dev</id><properties><env-flag>dev</env-flag></properties><!-- 默认为dev --><activation><activeByDefault>true</activeByDefault></activation></profile><!-- 测试 --><profile><id>test</id><properties><env-flag>test</env-flag></properties></profile><!-- 生产 --><profile><id>prod</id><properties><env-flag>prod</env-flag></properties></profile></profiles>
</project>
2.sunrays-framework(统一管理子模块)
1.继承sunrays-dependencies
<parent><groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.5</version><!-- 当要继承的模块不是目录中的当前模块的父模块时使用 --><relativePath/>
</parent><artifactId>sunrays-framework</artifactId>
<!-- 这里必须指定自己的版本,否则使用mvn versions 设置版本的时候会有问题 -->
<version>0.0.5</version>
2.发布基本配置
<!-- 项目名 -->
<name>${project.groupId}:${project.artifactId}</name>
<!-- 简单描述 -->
<description>统一管理整个项目的打包操作</description>
<!-- 开源地址 -->
<url>https://gitee.com/qyxinhua_0/sunrays-framework</url>
3.完整的pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.5</version><!-- 当要继承的模块不是目录中的当前模块的父模块时使用 --><relativePath/></parent><artifactId>sunrays-framework</artifactId><!-- 这里必须指定自己的版本,否则使用mvn versions 设置版本的时候会有问题 --><version>0.0.5</version><!-- 项目名 --><name>${project.groupId}:${project.artifactId}</name><!-- 简单描述 --><description>统一管理整个项目的打包操作</description><!-- 开源地址 --><url>https://gitee.com/qyxinhua_0/sunrays-framework</url><!-- 统一管理子模块 --><packaging>pom</packaging><modules><module>sunrays-common-demo</module><module>sunrays-common</module><module>sunrays-combinations</module><module>sunrays-common-cloud</module><module>sunrays-combinations-demo</module></modules>
</project>
3.其余模块都继承sunrays-framework,如果需要发布,则需要填写发布基本配置
2.切换版本并发布到本地仓库
1.修改sunrays-dependencies的版本为0.0.6
2.修改sunrays-framework继承的版本也为0.0.6
3.将sunrays-dependencies模块发布到本地仓库,直接clean install
4.sunrays-framework 下使用maven 插件统一切换版本为0.0.6
mvn versions:set -DnewVersion=0.0.6 -DprocessAllModules=true
5.按照以下顺序发布到本地仓库
1.sunrays-framework 只发布父模块
mvn clean install -N
2.sunrays-common 直接clean install
3.sunrays-common-cloud 直接clean install
4.sunrays-combinations 直接clean install
5.sunrays-common-demo 直接clean install
6.sunrays-combinations-demo 直接clean install
7.最后sunrays-framework再clean install一下
3.发布到远程仓库
1.sunrays-dependencies 直接发布 mvn clean deploy
2.点击publish(一定要等到变绿再进行下一步!!!)
https://central.sonatype.com/publishing/deployments
3.sunrays-framework 单独发布 mvn clean deploy -N
4.依然点击publish(一定要等到变绿再进行下一步!!!)
https://central.sonatype.com/publishing/deployments
5.发布sunrays-common-cloud模块,直接发布即可
6.发布sunrays-common模块,也是直接发布
7.全部发布后,点击Publish,等待变绿
4.测试使用
1.新建一个Maven项目
2.在pom中直接使用sunrays-dependencies进行依赖管理
<dependencyManagement><dependencies><dependency><groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.6</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
3.引入依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.demo</groupId><artifactId>sunrays-framework-demo</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencyManagement><dependencies><dependency><groupId>cn.sunxiansheng</groupId><artifactId>sunrays-dependencies</artifactId><version>0.0.6</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><!-- 日志模块 --><dependency><groupId>cn.sunxiansheng</groupId><artifactId>common-log4j2-starter</artifactId><version>0.0.6</version></dependency><!-- web模块 --><dependency><groupId>cn.sunxiansheng</groupId><artifactId>common-web-starter</artifactId><version>0.0.6</version></dependency></dependencies></project>
4.application.yml 配置日志存储根目录默认./logs
sun-rays:log4j2:home: /Users/sunxiansheng/IdeaProjects/demo/sunrays-framework-demo/logs # 日志存储根目录
5.SunraysApplication.java 启动类
package com.demo.sunrays;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;/*** Description:** @Author sun* @Create 2025/1/12 13:53* @Version 1.0*/
@SpringBootApplication
public class SunraysApplication {public static void main(String[] args) {SpringApplication.run(SunraysApplication.class, args);}
}
6.编写controller
package com.demo.sunrays.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** Description:** @Author sun* @Create 2025/1/12 13:55* @Version 1.0*/
@RestController
public class SunraysController {@RequestMapping("/sunrays")public String sunrays() {return "sunrays";}
}
7.测试,自动打印出参入参
相关文章:

项目架构调整,切换版本并发布到中央仓库
文章目录 0.完成运维篇maven发布到中央仓库的部分1.配置server到settings.xml2.配置gpg 1.架构调整1.sunrays-dependencies(统一管理依赖和配置)1.作为单独的模块2.填写发布到中央仓库的配置1.基础属性2.基本配置3.插件配置 3.完整的pom.xml 2.sunrays-f…...
考试知识点位运算
深入理解位运算 在C编程的世界里,位运算作为一种直接对二进制位进行操作的运算方式,虽然不像加减乘除等算术运算那样广为人知,却在许多关键领域发挥着至关重要的作用。从底层系统开发到高效算法设计,位运算都展现出其独特的魅力与…...
matlab快速入门(2)-- 数据处理与可视化
MATLAB的数据处理 1. 数据导入与导出 (1) 从文件读取数据 Excel 文件:data readtable(data.xlsx); % 读取为表格(Table)CSV 文件:data readtable(data.csv); % 自动处理表头和分隔符文本文件:data load(data.t…...

Kafka中文文档
文章来源:https://kafka.cadn.net.cn 什么是事件流式处理? 事件流是人体中枢神经系统的数字等价物。它是 为“永远在线”的世界奠定技术基础,在这个世界里,企业越来越多地使用软件定义 和 automated,而软件的用户更…...
Python-列表
3.1 列表是什么 在Python中,列表是一种非常重要的数据结构,用于存储一系列有序的元素。列表中的每个元素都有一个索引,索引从0开始。列表可以包含任何类型的元素,包括其他列表。 # 创建一个列表my_list [1, 2, 3, four, 5.0]…...

51单片机开发:定时器中断
目标:利用定时器中断,每隔1s开启/熄灭LED1灯。 外部中断结构图如下图所示,要使用定时器中断T0,须开启TE0、ET0。: 系统中断号如下图所示:定时器0的中断号为1。 定时器0的工作方式1原理图如下图所示&#x…...

【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(二)
目录 1 -> HML语法 1.1 -> 页面结构 1.2 -> 数据绑定 1.3 -> 普通事件绑定 1.4 -> 冒泡事件绑定5 1.5 -> 捕获事件绑定5 1.6 -> 列表渲染 1.7 -> 条件渲染 1.8 -> 逻辑控制块 1.9 -> 模板引用 2 -> CSS语法 2.1 -> 尺寸单位 …...
算法【混合背包】
混合背包是指多种背包模型的组合与转化。 下面通过题目加深理解。 题目一 测试链接:1742 -- Coins 分析:这道题可以通过硬币的个数将其转化为01背包,完全背包和多重背包。如果硬币的个数是1个,则是01背包;如果硬币的…...
WordPress eventon-lite插件存在未授权信息泄露漏洞(CVE-2024-0235)
免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…...

基于微信小程序的医院预约挂号系统设计与实现(LW+源码+讲解)
专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...

C++初阶 -- 手撕string类(模拟实现string类)
目录 一、string类的成员变量 二、构造函数 2.1 无参版本 2.2 有参版本 2.3 缺省值版本 三、析构函数 四、拷贝构造函数 五、c_str函数 六、operator重载 七、size函数 八、迭代器iterator 8.1 正常版本 8.2 const版本 九、operator[] 9.1 正常版本 9.2 const版…...

【Postman接口测试】Postman的安装和使用
在软件测试领域,接口测试是保障软件质量的关键环节之一,而Postman作为一款功能强大且广受欢迎的接口测试工具,能够帮助测试人员高效地进行接口测试工作。本文将详细介绍Postman的安装和使用方法,让你快速上手这款工具。 一、Pos…...
miniconda学习笔记
文章主要内容:演示miniconda切换不同python环境,安装python库,使用pycharm配置不同的conda建的python环境 目录 一、miniconda 1. 是什么? 2.安装miniconda 3.基本操作 一、miniconda 1. 是什么? miniconda是一个anac…...

区块链项目孵化与包装设计:从概念到市场的全流程指南
区块链技术的快速发展催生了大量创新项目,但如何将一个区块链项目从概念孵化成市场认可的产品,是许多团队面临的挑战。本文将从孵化策略、包装设计和市场落地三个维度,为你解析区块链项目成功的关键步骤。 一、区块链项目孵化的核心要素 明确…...
JavaScript的基本组成
1、JavaScript的组成部分 JavaScript可以分为三个部分:ECMAScript标准、DOM、BOM。 ECMAScript标准 即JS的基本语法,JavaScript的核心,描述了语言的基本语法和数据类型,ECMAScript是一套标 准,定义了一种语言…...

[Linux]从零开始的STM32MP157 U-Boot移植
一、前言 在上一次教程中,我们了解了STM32MP157的启动流程与安全启动机制。我们还将FSBL的相关代码移植成功了。大家还记得FSBL的下一个步骤是什么吗?没错,就是SSBL,而且常见的我们将SSBL作为存放U-Boot的地方。所以本次教程&…...

【Unity3D】实现横版2D游戏——攀爬绳索(简易版)
目录 GeneRope.cs 场景绳索生成类 HeroColliderController.cs 控制角色与单向平台是否忽略碰撞 HeroClampController.cs 控制角色攀爬 OnTriggerEnter2D方法 OnTriggerStay2D方法 OnTriggerExit2D方法 Update方法 开始攀爬 结束攀爬 Sensor_HeroKnight.cs 角色触发器…...
【llm对话系统】大模型 Llama 源码分析之 LoRA 微调
1. 引言 微调 (Fine-tuning) 是将预训练大模型 (LLM) 应用于下游任务的常用方法。然而,直接微调大模型的所有参数通常需要大量的计算资源和内存。LoRA (Low-Rank Adaptation) 是一种高效的微调方法,它通过引入少量可训练参数,固定预训练模型…...
算法随笔_35: 每日温度
上一篇:算法随笔_34: 最后一个单词的长度-CSDN博客 题目描述如下: 给定一个整数数组 temperatures ,表示每天的温度,返回一个数组 answer ,其中 answer[i] 是指对于第 i 天,下一个更高温度出现在几天后。如果气温在这之后都不会升…...
嵌入式硬件篇---CPUGPUTPU
文章目录 第一部分:处理器CPU(中央处理器)1.通用性2.核心数3.缓存4.指令集5.功耗和发热 GPU(图形处理器)1.并行处理2.核心数量3.内存带宽4.专门的应用 TPU(张量处理单元)1.为深度学习定制2.低精…...

wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...

push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...