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. Spring Boot 2.3.0 新特性Redis 拓扑动态感应

    本文为原创文章.欢迎任何形式的转载,但请务必注明出处 冷冷https://lltx.github.io. Spring Boot 2.3 新特性优雅停机详解 Spring Boot 2.3 新特性分层 ...

  2. Github Pages+Gridea设置DisqusJS评论

    1 前言 相信很多人都对Github Pages不默认,笔者之前写过了一篇文章,使用Github Pages去搭建博客的,链接可以戳这里. 但是唯一的不足是没有提到评论,因为当时笔者测试了一下,评论设 ...

  3. kafka-简介-02

    1.kafka怎么实现高可用? 2.kafka伸缩性,分区的作用? 3.名词术语 消息:Record.Kafka 是消息引擎嘛,这里的消息就是指 Kafka 处理的主要对象. 主题:Topic.主题是 ...

  4. kubernetes-copyFromPod

    import com.google.common.io.ByteStreams; import io.kubernetes.client.Copy; import io.kubernetes.clie ...

  5. ServletConfig和ServletContext接口

    ServletConfig 在web.xml文件中使用一个或多个init-param元素进行配置后,Tomcat初始化Servlet时,都会将该Servlet的配置信息封装到一个ServletConf ...

  6. 重绘DevExpress的XtraMessageBox消息提示框控件

    先来看提示框,可以看到框其实是一个去掉最大化.最小化按钮后的窗体,窗体的内容就是我们想要提示的内容,重绘提示框其实就是重绘窗体以及中间部分的内容. 首先重绘窗体,消息提示框的窗体不是XtraForm而 ...

  7. vue-cli 各文件夹的用途

  8. Laravel 定时任务 任务调度 可手动执行

    1.创建一个命令 php artisan make:command TestCommand 执行成功后会提示: Console command created successfully. 生成了一个新 ...

  9. 技术面试问题汇总第004篇:猎豹移动反病毒工程师part4

    这次所讨论的三个问题,比如DLL以及HOOK,很容易被病毒木马所利用,因此必须要比较全面地进行了解.而异常处理机制,则往往与漏洞相关联.它们自身的概念并不难理解,只是由之引申而来的问题,在计算机安全领 ...

  10. PAT 乙级 -- 1007 -- 素数对猜想

    题目简述 让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数.显然有 d1=1 且对于n>1有 dn 是偶数."素数对猜想"认为"存在无穷 ...