Spring boot SpringBootMaven插件:它实际上做什么?
有人能告诉我Spring Boot Maven插件的实际功能吗?我一直在谷歌上搜索,但我发现的大部分东西都不清楚 到目前为止,我的印象是,它可以创建一个“完全可执行”的jar,而不需要通过Spring boot SpringBootMaven插件:它实际上做什么?,spring-boot,spring-boot-maven-plugin,Spring Boot,Spring Boot Maven Plugin,有人能告诉我Spring Boot Maven插件的实际功能吗?我一直在谷歌上搜索,但我发现的大部分东西都不清楚 到目前为止,我的印象是,它可以创建一个“完全可执行”的jar,而不需要通过java-jar运行,而且还可以创建一个更传统的jar,通过java-jar运行。我相信它也能产生其他的变化 我还觉得它可以打包依赖项和资源。我根本不清楚应用程序在运行时如何“访问”资源 在上述两种结果中,我是否只需要jar而不需要其他东西(即没有资源文件、依赖项jar等)?换句话说,罐子是独立的吗?当我打开罐
java-jar
运行,而且还可以创建一个更传统的jar,通过java-jar
运行。我相信它也能产生其他的变化
我还觉得它可以打包依赖项和资源。我根本不清楚应用程序在运行时如何“访问”资源
在上述两种结果中,我是否只需要jar而不需要其他东西(即没有资源文件、依赖项jar等)?换句话说,罐子是独立的吗?当我打开罐子时,它需要的东西似乎都在那里。真的是这样吗
现在,让我们进一步了解我要做的事情。我正在用RESTAPI编写一组Spring服务。每个服务都将在其自己的VM(或容器-未来)中运行。这些服务被打包到一个jar中,要使用的服务通过Spring概要文件进行选择(即Spring.profiles.active=a-profile
)
我以前做过类似的事情,就是使用Maven assembly插件为每个单独的服务生成一个存档(zip),并包含所有必需的内容(依赖项jar、资源文件等)。我会把它放在需要的地方,解包,调整一些配置,然后通过附带的脚本运行它
我得到的印象是,当涉及到SpringBootMaven插件时,它并不是“如何完成的”
SpringBootMaven插件在Maven中提供SpringBoot支持,允许您打包可执行jar或war归档文件,并“就地”运行应用程序
它构建了uber jar,它将Tomcat与您的应用程序捆绑在一起。如果您使用jar-tf
检查jar的内容,您会发现格式有点不同。Spring引导类看起来很正常,但是项目的文件位于Boot-INF
文件夹中