Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring boot SpringBootMaven插件:它实际上做什么?_Spring Boot_Spring Boot Maven Plugin - Fatal编程技术网

Spring boot SpringBootMaven插件:它实际上做什么?

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等)?换句话说,罐子是独立的吗?当我打开罐

有人能告诉我Spring Boot Maven插件的实际功能吗?我一直在谷歌上搜索,但我发现的大部分东西都不清楚

到目前为止,我的印象是,它可以创建一个“完全可执行”的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
文件夹中