本来想用idea安装的,不过用maven生成后发现jar有20,30M肯定不对,后来还是用eclipse生成了,方便很多

环境:

eclipse luna,jdk1.8_112

1.生成jar包,首先我们写一个类,几个普通的函数

代码:

public class Util {

public void say(){
System.out.println("hello");
}

public int add(int a,int b){
return a + b;
}
}

2.我们把这几个方法封装成jar包,好让我们其它项目可以用

右击Demo1项目 -》export ->JAR file,然后next

3.然后finish,就可以找到jar包了,把这个jar包copy到eclipse中可以直接用,例如再新建一个项目Demo2

//这个Util就是我们刚刚打包的类

import com.ontoweb.message.Util;

public class Test {

private static Util util = new Util();

public static void main(String[] arg){
System.out.println("这是主函数");
util.say();
System.out.println("相加的结果是" + util.add(1, 2));
}

public void answer(){
util.say();
}

public void add(int a,int b){
System.out.println("相加的结果是" + util.add(a, b));
}
}

在这个类里,右击run as -> java application,就可以有结果了

4.将jar包以maven的形式导入到idea中

首先把jar包的名字改成我们想要的,例如spring-message-1.0.0.jar,然后运行maven命令(需要maven环境)

mvn install:install-file -Dfile=C:\Users\xiabin\Desktop\spring-message-1.0.0.jar -DgroupId=com.ontoweb -DartifactId=spring-message -Dversion=1.0.0 -Dpackaging=jar

 -Dfile:你的jar包的位置

 -DgroupId: 是项目组织唯一的标识符(这里可以自己定)

 -DartifactId:项目的唯一的标识符(这里可以自己定)

 -Dpackaging:指定包是jar包

安装完就可以在maven仓库找到我们的包了

5.然后在maven的pom.xml中引用我们的jar包

<dependency>
  <groupId>com.ontoweb</groupId>
  <artifactId>spring-message</artifactId>
  <version>1.0.0</version>
</dependency>

java将类和函数封装成jar的更多相关文章

  1. java将类和函数封装成jar,然后在别的项目中使用这个jar包

    本来想用idea安装的,不过用maven生成后发现jar有20,30M肯定不对,后来还是用eclipse生成了,方便很多 环境: eclipse luna,jdk1.8_112 1.生成jar包,首先 ...

  2. 【eclipse jar包】在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。

    Eclipse中导入外部jar包 在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可. 工具/原料 Eclipse 需要 ...

  3. 把jQuery的类、插件封装成seajs的模块的方法

    这篇文章主要介绍了把jQuery的类.插件封装成seajs的模块的方法,需要的朋友可以参考下 注:本文使用的seajs版本是2.1.1 一.把Jquery封装成seajs的模块 define(func ...

  4. java—将查询的结果封装成List<Map>与用回调函数实现数据的动态封装(44)

    手工的开始QueryRunner类.实现数据封装: MapListHandler MapHandler BeanListHandler BeanHandler 第一步:基本的封装测试 写一个类,Que ...

  5. (原)编写JAVA工具之json自动封装成pojo

    代码在最后 我个人是不太喜欢http和json,可能是游戏做的多了的原因的,对通信协议和通信方式特敏感,因此即使是做应用我也会选择rpc而非http,但是有时候因为各种原因,还是不的不处理标准的htt ...

  6. C#将C++动态库的回调函数封装成事件

    关于C#调用C++动态库的文章很多,调用动态库中回调函数的方法也不在少数.但大多数调用回调函数的方法依然保留了C++的语法特点. 比如有一段C++的回调函数代码,为了表达它的意思,我把注释也粘贴了进来 ...

  7. [ java 工具类] xml字符串解析成Map(DOM解析)

    package com.tencent.jungle.wechat.util; import com.google.inject.Singleton; import org.w3c.dom.Docum ...

  8. 如何将自定义标签封装成一个Jar包

    当我们在一个web应用中开发好一些自定义标签的时候,这些自定义标签通常有标签处理器Java类,和一个描述这些标签tld文件,如果我们想在以后别的web工程中还能用上这些标签,可以将这些自定义标签封装在 ...

  9. MOOC(7)- case依赖、读取json配置文件进行多个接口请求-读取json封装成类(13)

    把读取json数据的函数封装成类 # -*- coding: utf-8 -*- # @Time : 2020/2/12 16:44 # @File : do_json_13.py # @Author ...

随机推荐

  1. Python label for _ 用法

    Python label for _ 用法 Python label for _ 用法 >>> label_data = [iter([3,4]),iter([4,9]), iter ...

  2. 《Ubuntu入门基础》第三篇

    创建虚拟磁盘

  3. [转载] FFMPEG视音频编解码零基础学习方法

    在CSDN上的这一段日子,接触到了很多同行业的人,尤其是使用FFMPEG进行视音频编解码的人,有的已经是有多年经验的“大神”,有的是刚开始学习的初学者.在和大家探讨的过程中,我忽然发现了一个问题:在“ ...

  4. 复制的web工程为什么不能部署到tomcat

    An existing resource has been found at location D:\apache-tomcat-6.0.18\apache-tomcat-6.0.18\webapps ...

  5. remoting与socket、web service的比较及实例

    remoting基础 一种分布式处理方式,可以说是DCOM的一种升级 跨过应用程序域,与另外的应用程序域进行通信,即穿越边界 在remoting中是通过通道(channel)来实现两个应用程序域之间对 ...

  6. LeetCode 621. Task Scheduler

    原题链接在这里:https://leetcode.com/problems/task-scheduler/description/ 题目: Given a char array representin ...

  7. 一般在cmd中报不是合法的命令啥的,都是环境变量没有配置好

    在配置cnpm的时候一定要将环境变量先配置好,配置如下: C:\Program Files\nodejs; C:\Program Files\nodejs\node_global; C:\Progra ...

  8. C#动态执行代码

          在开始之前,先熟悉几个类及部分属性.方法:CSharpCodeProvider.ICodeCompiler.CompilerParameters.CompilerResults.Assem ...

  9. 洛谷【P1757】通天之分组背包

    浅谈\(DP\):https://www.cnblogs.com/AKMer/p/10437525.html 题目传送门:https://www.luogu.org/problemnew/show/P ...

  10. Linux 多路复用 select / poll

    多路复用都是在阻塞模式下有效! linux中的系统调用函数默认都是阻塞模式,例如应用层读不到驱动层的数据时,就会阻塞等待,直到有数据可读为止. 问题:在一个进程中,同时打开了两个或者两个以上的文件,读 ...