11.5. 创建一个可执行jar
我们通过创建一个完全自包含,并可以在生产环境运行的可执行jar来结束示例。可执行jars(有时被称为胖jars "fat jars")是包含编译后的类及代码运行所需依赖jar的存档。
可执行jars和Java:Java没有提供一个标准方式,用于加载内嵌jar文件(即jar文件中还包含jar文件),这对分发自包含应用来说是个问题。为了解决该问题,很多开发者采用"共享的"jars。共享的jar只是将所有应用依赖的类打包进一个单独的存档,这种方式存在的问题是,很难区分应用程序中使用了哪些库。在多个jars中如果存在相同的文件名(但内容不一样)也会是一个问题。Spring Boot采取一个不同的方式,让你真正的直接内嵌jars。
为了创建可执行的jar,我们需要将spring-boot-maven-plugin
添加到pom.xml
中,在dependencies节点后面插入以下内容:
注:spring-boot-starter-parent
POM包含绑定到repackage目标的<executions>
配置。如果不使用parent POM,你需要自己声明该配置,具体参考插件文档。
保存pom.xml
,并从命令行运行mvn package
:
如果查看target目录,你应该可以看到myproject-0.0.1-SNAPSHOT.jar
,该文件大概有10MB。想查看内部结构,可以运行jar tvf
:
在该目录下,你应该还能看到一个很小的名为myproject-0.0.1-SNAPSHOT.jar.original
的文件,这是在Spring Boot重新打包前,Maven创建的原始jar文件。
可以使用java -jar
命令运行该应用程序:
如前所述,点击ctrl-c
退出应用。
最后更新于