当前位置: 首页 > news >正文

maven项目打包成sdk后在别的项目使用

创建sdk项目

关键在于maven install和在pom文件中定义好groupId、actifactId、version。

写简单的两个类

判断回文

public class StringValidator {/*** 检查给定的字符串是否为回文。* 回文是指正读和反读都一样的字符串(忽略空格、大小写)。** @param str 要检查的字符串,可能为 null。* @return 如果字符串是回文,则返回 true;否则返回 false。*/public static boolean isPalindrome(String str) {if (str == null) {return false;}String clean = str.replaceAll("\\s+", "").toLowerCase();int length = clean.length();for (int i = 0; i < length / 2; i++) {if (clean.charAt(i) != clean.charAt(length - 1 - i)) {return false;}}return true;}}

首字母大写

public class StringFormatter {/*** 将输入字符串转换为标题格式,即每个单词首字母大写,其余字母小写。* 如果输入字符串为 null 或空字符串,则直接返回原字符串。** @param input 要转换的字符串,可能为 null。* @return 转换后的标题格式字符串。*/public static String toTitleCase(String input) {if (input == null || input.isEmpty()) {return input;}StringBuilder titleCase = new StringBuilder();boolean nextTitleCase = true;for (char c : input.toCharArray()) {if (Character.isSpaceChar(c)) {nextTitleCase = true;} else if (nextTitleCase) {c = Character.toTitleCase(c);nextTitleCase = false;} else {c = Character.toLowerCase(c);}titleCase.append(c);}return titleCase.toString();}}

pom和打包

定义好

<groupId>com.kenyi</groupId>
<artifactId>sdkDemo</artifactId>
<version>1.0-SNAPSHOT</version>

还有打包的maven插件

    <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.11.0</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build>

完整的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>com.kenyi</groupId><artifactId>sdkDemo</artifactId><version>1.0-SNAPSHOT</version><name>kenyi SDK demo</name><description>A simple SDK demo</description><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><java.version>1.8</java.version></properties><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.11.0</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build></project>

打包用maven的install插件即可,会自动打包安装到本地的maven仓库中
在这里插入图片描述
在这里插入图片描述

使用sdk

在另一个项目中的pom添加依赖

        <dependency><groupId>com.kenyi</groupId><artifactId>sdkDemo</artifactId><version>1.0-SNAPSHOT</version></dependency>
package com.kenyi.demo.common;import com.kenyi.sdk.common.StringFormatter;
import com.kenyi.sdk.common.StringValidator;/*** @author BIGSHU0923* @since 2025/6/30 22:51*/
public class StringUtils {public static void main(String[] args) {// 使用SDK中的功能String title = StringFormatter.toTitleCase("hello world");// 输出: Hello WorldSystem.out.println(title);// 输出: Is palindrome: trueboolean isPal = StringValidator.isPalindrome("madam");System.out.println("Is palindrome: " + isPal);}}

结果
在这里插入图片描述

http://www.dtcms.com/a/326629.html

相关文章:

  • 从0开始的中后台管理系统-5(部门管理以及菜单管理页面功能实现)
  • 【科研绘图系列】R语言绘制散点图折线图误差棒组合图
  • 指派问题-匈牙利算法
  • 2025牛客多校第八场 根号-2进制 个人题解
  • HTTPS应用层协议-CA签名与证书
  • Vue 3 快速入门 第六章
  • MaixPy简介
  • Projects
  • 进程管理是什么
  • DeepSeek生成的高精度大数计算器
  • 自制网页并爬取,处理异常值(第十九节课内容总结)
  • .NET/C# webapi框架下给swagger的api文档中显示注释(可下载源码)
  • MP3Tag 软件功能简介
  • (二)vscode搭建espidf环境,配置wsl2
  • 第16届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2025年4月真题
  • 进阶版|企业级 AI Agent 的构建实践
  • 【03】厦门立林科技——立林科技 嵌入式 校招笔试,题目记录及解析
  • 从零开始的ReAct Agent尝试
  • 应用监控工具Skywalking
  • bitbake –s:列出所有可编译的模块
  • 【STL】queue队列容器
  • priority_queue(优先级队列)和仿函数
  • ArkUI中的自定义组件(一)
  • 用于计算的程序是部署在哪里,为什么可以这样?
  • 从 WebView2 迁移至 DotNetBrowser:第一部分
  • android 换肤框架详解2-LayoutInflater源码解析
  • 《零基础入门AI:深度学习基础核心概念解析(从激活函数到反向传播)》
  • 大模型提示词工程实践:提示词工程实践-引导大模型完成任务
  • 直播美颜SDK架构设计指南:美白滤镜的高效实现与跨平台适配
  • MySQL 基本语法