如何正确创建Java类库并在项目中引入自定义jar包使用
自定义Jar包引入项目配置及调用指南
前置修正:先调整类库代码
你当前的类库代码存在两个问题,就算配置完依赖也无法被外部调用,必须先修正后重新打包替换library文件夹下的旧jar:
- 缺少
java.util.Map、java.util.HashMap的导包语句,编译阶段就会报错 - 所有工具方法都用
private修饰,仅能在类内部访问,外部项目完全不可见
修正后可正常对外使用的类库代码参考:
import java.util.HashMap; import java.util.Map; // 建议不要用Main作为工具类名,语义不清晰 public class HashMapUtils { // 工具类加私有构造,防止被意外实例化 private HashMapUtils() {} // 对外暴露的方法必须改为public修饰 public static <K, V> void addElement(Map<K, V> map, K key, V value) { map.put(key, value); } public static <K, V> void printElements(Map<K, V> map) { System.out.println(map); } }
注意:如果类里声明了自定义包名,调用时要按全限定名导包
不同项目场景的Jar依赖配置
场景1:IDEA手动创建的普通Java项目
- 按快捷键
Ctrl+Alt+Shift+S(Mac端为Cmd+;)打开项目结构设置 - 依次进入
Modules->Dependenciestab页 - 点击tab页右上角的
+按钮,选择JARs or Directories选项 - 在文件选择弹窗中选中你存放在library文件夹下的自定义jar包,点击确认
- 勾选jar包前的复选框,将依赖范围设置为
Compile,点击应用保存配置即可
场景2:Maven管理的项目
- 打开项目根目录的终端,执行以下命令将本地jar安装到本地Maven仓库,替换命令里的路径、坐标参数为你自己的实际值:
mvn install:install-file -Dfile=./library/你的jar包全名.jar -DgroupId=com.custom -DartifactId=hashmap-util -Dversion=1.0 -Dpackaging=jar
- 在项目
pom.xml的dependencies节点下加入对应依赖:
<dependency> <groupId>com.custom</groupId> <artifactId>hashmap-util</artifactId> <version>1.0</version> </dependency>
- 刷新Maven依赖即可完成配置
场景3:Gradle管理的项目
直接打开项目的build.gradle文件,在dependencies节点下添加本地文件依赖:
dependencies { // 路径填jar相对于项目根目录的相对路径即可 implementation files('library/你的jar包全名.jar') }
刷新Gradle依赖即可完成配置
调用验证
配置完成后,在业务代码中直接导包调用即可,示例:
// 替换为你类的实际全限定包名 import com.custom.HashMapUtils; import java.util.HashMap; import java.util.Map; public class Test { public static void main(String[] args) { Map<Integer, String> demoMap = new HashMap<>(); HashMapUtils.addElement(demoMap, 1, "XML serv."); HashMapUtils.printElements(demoMap); } }
运行代码后控制台正常输出{1=XML serv.}即代表配置生效。
内容的提问来源于stack exchange,提问作者ProgramCOder
相关产品推荐
相关产品推荐

