javase基础系列之——jar包概念以及生成方式

一。jdk打jar包:

参考文章:https://www.cnblogs.com/mq0036/p/8566427.html

当一个jar包里面引入了另一个jar包的时候,通过jdk打包

 

二。工具打jar包:

idea:

参考文章:

https://www.cnblogs.com/blog5277/p/5920560.html

include in project 打钩和不打勾

在于build project时候是不是自动生成jar包:

参考文章:https://blog.csdn.net/qq_37860634/article/details/88061005

打包后的目录结构如下:

javase基础系列之——jar包概念以及生成方式_第1张图片

javase基础系列之——jar包概念以及生成方式_第2张图片

 

打开springbootdemo.jar

javase基础系列之——jar包概念以及生成方式_第3张图片

可以看到idea打的jar包,没有MANIFEST.MF文件,不是可执行的jar包。

三。maven插件打jar包:

命令:mvn package

说明:maven插件打的jar包基于jdk的打包机制,包含基本的mf文件和编译的class文件

war:war相比jar多了lib等文件夹

 

springboot:打的jar如果需要独立运行,需要指定清单属性,可以在pom里面添加插件

如下:

Manifest-Version: 1.0
Implementation-Title: springbootdemo
Implementation-Version: 0.0.1-SNAPSHOT
Built-By: Administrator
Implementation-Vendor-Id: com.caidi
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_171
Implementation-URL: https://projects.spring.io/spring-boot/#/spring-bo
 ot-starter-parent/springbootdemo
 Start-Class: com.caidi.springbootdemo.SpringbootdemoApplication

Main-Class代表了Spring Boot中启动jar包的程序

Start-Class属性就代表了Spring Boot程序的入口类,这个类中应该有一个main方法

MANIFEST.MF文件 参考文章:https://blog.csdn.net/u010429286/article/details/79085212#commentBox

 

jar包运行:

一。

jdk:

java -jar xx.jar

 

二。

maven:

mvn run

 

三。

你可能感兴趣的:(javase基础系列之——jar包概念以及生成方式)