JAR文件是一种压缩文件,与常见的ZIP压缩文件兼容,被称为JAR包,下面这篇文章主要给大家介绍了关于使用IDEA打jar包的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
1. 点击intellij idea左上角的“File”菜单 -> Project Structure
2. 点击"Artifacts" -> 绿色的"+" -> “JAR” -> Empty
3. Name栏填入自定义的名字,Output ditectory 选择 jar 包目标目录,Available Elements 里双击需要添加到 jar 包的文件,即可添加到左边的jar 包目录下,具体看下图。
!!!注意这里:需要将依赖也加入到左边,不然生成的 jar 包,启动时会报错。
选中所有依赖,右击【Put into Output Root】。
4. 点击Create Manifest,选择放置MANIFEST.MF的文件路径(直接默认项目根目录就行,尽量不要选别的路径,可能会造成不必要的错误),点击OK
5. 点击Main Class后面选择按钮。 6. 弹出框中选择需要运行程序入口 main 函数,点击OK。 7. 以上设置完之后,点击OK。 8. 点击菜单中“Build” -> “Build Artifacts”。
9. 双击弹出框中待生成jar包下面的build即可,如下图。
常见报错【未解决】:
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication
at com.hr.CodeApplication.main(CodeApplication.java:13)
Caused by: java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
第二种打包方式(使用Maven的Packge打包)
在父 pom.xml 中就,加入如下配置:
<build>
<!-- 最终打包的名字 -->
<finalName>springboot</finalName>
<!-- 手动指定文件夹为resources,加载java下所有的xml文件-->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>
点击 IDEA 右侧的 Maven 点击 package 即可打包完成!
总结
到此这篇关于使用IDEA打jar包的文章就介绍到这了,更多相关IDEA打jar包内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:使用IDEA打jar包的详细图文教程
基础教程推荐
- java基础知识之FileInputStream流的使用 2023-08-11
- Java数据结构之对象比较详解 2023-03-07
- java实现多人聊天系统 2023-05-19
- springboot自定义starter方法及注解实例 2023-03-31
- Java并发编程进阶之线程控制篇 2023-03-07
- Java实现查找文件和替换文件内容 2023-04-06
- Java文件管理操作的知识点整理 2023-05-19
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- Java实现线程插队的示例代码 2022-09-03
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02