Jar 包介绍

Jar 包 ( Java Archive,Java 归档文件) 是与平台无关的压缩文件格式,它允许将多个 Java 源文件编译生成的 class 文件(即字节码文件)打包成一个压缩文件(文件后缀名为 .jar)

注:Jar 包与 zip 压缩文件格式兼容,意思就是你可以使用 zip 软件对Jar 包进行解压缩。

Jar 包作用

  • 用于发布和使用第三方类库(项目中导入 Jar 包就可以使用第三方提供的代码)

  • 作为应用程序和扩展的构建单元(Jar 包可以和项目一起构建)

  • 作为组件、applet 或者插件程序的部署单位(Jar 包可以作为应用程序独立运行)

  • 用于打包与组件相关联的辅助资源(Jar 包除了打包 class 文件还可以打包项目图片等任何资源)

Jar 包分类

  • JDK Jar 包:JDK 提供的 Java 标准类库(安装 JDK 后自动导入使用)

  • 第三方 Jar 包:第三方组织或个人发布的 Java 非标准库(下载 Jar 包后手动导入使用)

IDEA 打包 Jar 包

1. 先创建一个要打包成jar包的类

2. 打开 File -> Project Structrue -> Artifacts -> + -> JAR -> from modules with dependencies…

3.在 Main Class 中选择要打包的类

project -> 选择打包的类 -> 然后OK

点击OK

注意:Maven项目打包时不要放到 main/java目录下,否则打成的 jar 中 META-INF/MANIFEST.MF 不含有 Main Class信息,生成可执行jar运行会提示没有主清单属性

4. 最后 Apply -> OK

5. Build -> Build Artifacts

6. 点击 Build 后就会再之前选择的 jar 存放目录中生成 jar 包

IDEA 导入 Jar 包

你可能会问,第三方或个人发布的 Jar 包在哪里找呀?

Maven Jar 包中心仓库地址 :https://mvnrepository.com/

这里有世界上最全的 Jar 包,不过要下载这里的 Jar 包需要学会使用 Maven 工具( 别着急哈,我们后面会学 )

另外,第三方开源组织一般会提供官网,可以在它们的官网上下载。还有就是一些 Java 开发人员会收集一些项目中常用的 Jar 包发布出来,也可以去下载。

我就不上网下载 Jar 包,直接用上面生成的 Jar 包给大家演示 IDEA 工程中如何导入 Jar 包哈。

1. 打开 File -> Project Structrue -> Modules ->Dependencies -> + -> jARs or directories…

2. 在 jar 包的存放目录中找到 jar 包,然后点击 OK

实际项目开发一般习惯在工程中创建一个 lib 文件夹,将第三方 Jar 包都拷贝到这个文件夹里,以方便统一管理

3. 选择 jar 包 -> Apply -> OK

4. 然后就可以在 External Libraries(第三方类库) 中看到导入的 jar 包

5. 将之前的 MyJar类 删除掉,然后新建一个测试类 Test,测试一下 jar 包是否可以

看来可以正常使用,说明 Jar 包导入成功!

IDEA 打包和导入 Jar 包的更多相关文章

  1. Android使用KSOAP2调用WebService及正确导入jar包的问题(转)

    Android使用KSOAP2调用WebService及正确导入jar包的问题(转)     错误信息 最近在学Android使用KSOAP2调用现有的Webservice的方法,期间在网上找了很多代 ...

  2. 转!java web项目 build path 导入jar包,tomcat启动报错 找不到该类

    在eclipse集成tomcat开发java web项目时,引入的外部jar包,编译通过,但启动tomcat运行web时提示找不到jar包内的类,需要作如下配置,将jar包在部署到集成的tomcat环 ...

  3. maven向本地仓库导入jar包(处理官网没有的jar包)

    对于官网没有的jar包,maven向本地仓库导入jar包用如下命令 mvn install:install-file -DgroupId=包名 -DartifactId=项目名 -Dversion=版 ...

  4. 分析-eclipse已经导入jar包了,但还是出现classNotFound异常

    场景:分析-eclipse已经导入jar包了,但还是出现classNotFound异常 分析--eclipse已经导入jar包了,但还是出现classNotFound错误 最近在做一个web项目时,由 ...

  5. Spring环境搭建之:导入jar包、配置文件名称及放置位置

    Spring环境搭建之:导入jar包.配置文件名称及放置位置 现在项目开发中spring框架应用的还是比较多的,自己用的还不太熟练,每次用的时候总配置半天,总有些配置弄错,就找个时间总结以下,方便以后 ...

  6. Android Studio 简介及导入 jar 包和第三方开源库方[转]

    原文:http://blog.sina.com.cn/s/blog_693301190102v6au.html Android Studio 简介 几天前的晚上突然又想使用 Android Studi ...

  7. IntelliJ IDEA15导入jar包

    在IDEA中导入jar包和eclipse中是不一样的,那么现在我们就来看看在IDEA中如何导入jar包. 1.点击"File"-->"Project Structu ...

  8. eclipse 导入jar包

    我们在用Eclipse开发程序的时候,经常想要用到第三方的jar包.这时候我们就需要在相应的工程下面导入这个jar包.以下配图说明导入jar包的步骤. 1.右击工程的根目录,点击Properties进 ...

  9. Eclipse下如何导入jar包

    原地址:http://blog.csdn.net/justinavril/article/details/2783182 我们在用Eclipse开发程序的时候,经常想要用到第三方的jar包.这时候我们 ...

随机推荐

  1. UnitThreeSummary

    目录 一.JML的梳理与总结 二.SMT Solver的部署与验证 三.JMLUnitNG的部署与测试 四.作业的设计与总结 第一次作业 第二次作业 第三次作业 五.BUG 六.总结与反思 一.JML ...

  2. CLUSTAL W论文解读

    CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence wei ...

  3. Anacoda下报错conda command not found 以及TypeError: __new__() got an unexpected keyword argument 'serialized_options'

    在anacoda安装完成后,执行conda list命令,显示command not found 解决方法: 对于anaconda 2  , 输入export PATH=~/anaconda2/bin ...

  4. Mysql事务原理

    一.什么是事务 事务:是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作:这些操作作为一个整体一起向系统提交,要么都执行.要么都不执行:事务是一组不可再分割的操作集合(工作逻辑单元): ...

  5. k8s 无头service 方式向内发布

    k8s 无头service 是指 clusterIP 为 None 的service 案例,假定有一个 deployment,containerPort 端口80,同时还被打上 python=mywe ...

  6. 0703-可视化工具tensorboard和visdom

    0703-可视化工具tensorboard和visdom 目录 一.可视化工具概述 二.TensorBoard 三.Visdom 3.1 visdom 概述 3.2 visdom 的常用操作 3.3 ...

  7. 关于nacos在windows系统启动时闪退的问题

    nacos可以用来作为springcloud的配置中心使用,但在windows系统下使用的时候需要注意. nacos下载后解压,可以直接点击文件bin目录下的  startup.cmd  就可以启动. ...

  8. 【Java】String、StringBuilder和StringBuffer

    [String] 首先,从String类的定义入手,可以看到String类是由final修饰,即不可变的,一旦创建出来就不可修改,因此首先明确,字符串的拼接.截取等操作都会产生新的字符串对象. 观察以 ...

  9. 01- QTP快速入门

    QTP概述 QTP安装流程

  10. 软件篇-04-OMPL和FCL用于SLAM轨迹规划

    使用OMPL内置的infoRRTstar算法模块和FCL碰撞检测库实现当前点和目标点的轨迹规划, 参考文章:https://www.cnblogs.com/shhu1993/p/7062099.htm ...