使用IDEA将Java/Kotliin工程导出Jar包的正确姿势

所属分类: 软件编程 / java 阅读数: 39
收藏 0 赞 0 分享

导出的 Jar 包无法运行?

导出的 Jar 包找不到 Main class?

大概是我对导出 Jar 包的理解不深吧,反正一直不太懂 IDEA 导出 Jar 包的界面和功能到底怎么用。但总算是自己摸索出了正确的方法。

第一步:添加构建

首先要介绍的是 Artifact 这个概念,可以理解为一种构建,比如说 Android Studio 构建出来的 Artifact 就是 Apk 文件。Java 程序当然是可以构建出 Jar 包的。

在一个 Java 或 Kotlin 工程中,在 IDEA 的顶部的工具栏上,找到 Project Structure 图标。

或者在,File -> Project Structures... 也可以找到。

点击,打开 Project Structure 窗口。

如下图所示,Project Structure 窗口左侧可以选择 Artifacts ,右侧点击加号,选择 Jar -> Empty

在窗口的右侧,就会出现一个可以编辑的界面。如下图所示:上面的红框是填写 Jar 包的名称,左下的红框表示这个 Jar 包里面包含什么内容,右下的红框表示有什么东西是可以放进去的。

第二步:添加 Manifest

在 Jar 里面没有添加任何东西的时候,点击 xxx.jar ,底部会显示 添加 Manifest 的操作按钮。

添加完,并指定 Main class 就可以了。如下图所示:

第三步:添加 Jar 包内容

接下来就是最关键的操作了。

对于工程中的源码,一般都是显示为 'xxxx' compile output,对它们的操作为,右键,选择 Put into Output Root。

对于工程中依赖的库什么的,就右键,选择 Extract Into Output Root。

最终会得到下面这样的结果。

第四步:构建

经过上面的步骤,一个 Artifact 的配置就做好了。我们就可以执行它。

在菜单栏,Build -> Build Artifacts...

点击 Build 即可构建。

生成的东西应该会在 output 或 out 或 build 之类的目录里面。

赶快执行一下 java -jar yourJar.jar 试试看吧!

更多精彩内容其他人还在看

java 中maven pom.xml文件教程详解

这篇文章主要介绍了java 中maven pom.xml文件教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

spring boot整合netty的实现方法

这篇文章主要介绍了spring boot整合netty的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Netty与Spring Boot的整合实现

这篇文章主要介绍了Netty与Spring Boot的整合的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring动态加载bean后调用实现方法解析

这篇文章主要介绍了Spring动态加载bean后调用实现方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

java实现画图板上画一条直线

这篇文章主要为大家详细介绍了java实现画图板上画一条直线,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Java通过python命令执行DataX任务的实例

今天小编就为大家分享一篇Java通过python命令执行DataX任务的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

springBoot集成redis的key,value序列化的相关问题

这篇文章主要介绍了springBoot集成redis的key,value序列化的相关问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

java实现登录案例

这篇文章主要为大家详细介绍了java实现登录案例的相关代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

java解决请求跨域的两种方法

这篇文章主要为大家详细介绍了java解决请求跨域的两种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

SpringBoot集成Beetl后统一处理页面异常的方法

这篇文章主要介绍了SpringBoot集成Beetl后统一处理页面异常的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享
查看更多