栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot maven依赖jar包外置

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot maven依赖jar包外置


springboot maven依赖jar包外置

                                    

                                    

**********************

示例

                       

*****************

controller 层

                    

HelloController

@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello(){
        System.out.println("hello");

        return "success";
    }
}

                              

                            

**********************

依赖jar包默认打包位置

                               

项目打包

                        

                     

解压 hello.jar:依赖jar包默认存放在BOOT-INF/lib目录中

                        

              

                            

**********************

依赖jar包外置

                             

pom.xml(build部分)

    
        hello
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                        
                            org.projectlombok
                            lombok
                        
                    

                    
                    
                        
                            nothing
                            nothing
                        
                    

                
            

            
            
            
            
                org.apache.maven.plugins
                maven-jar-plugin
                3.2.0
                
                    
                        
                            true
                            lib
                            com.example.demo.DemoApplication
                        
                    
                
            

            
            
                org.apache.maven.plugins
                maven-dependency-plugin
                3.2.0
                
                    
                        copy
                        package
                        
                            copy-dependencies
                        
                        
                            jar
                            jar
                            ${build.directory}/lib
                        
                    
                
            

        
    

                       

项目打包

                        

依赖jar包复制到了target/lib目录中

                      

解压 hello.jar

                        

                        

BOOT-INF/lib 目录中只有spring-boot-jarmode-layertools-2.5.5.jar包

                          

meta-INF/MANIFEST.MF 文件

                        ​​​​​​​ 

Manifest-Version: 1.0
Created-By: Maven Jar Plugin 3.2.0
Build-Jdk-Spec: 16
Class-Path: lib/spring-boot-starter-web-2.5.5.jar lib/spring-boot-starte
 r-2.5.5.jar lib/spring-boot-2.5.5.jar lib/spring-boot-autoconfigure-2.5
 .5.jar lib/spring-boot-starter-logging-2.5.5.jar lib/logback-classic-1.
 2.6.jar lib/logback-core-1.2.6.jar lib/log4j-to-slf4j-2.14.1.jar lib/lo
 g4j-api-2.14.1.jar lib/jul-to-slf4j-1.7.32.jar lib/jakarta.annotation-a
 pi-1.3.5.jar lib/snakeyaml-1.28.jar lib/spring-boot-starter-json-2.5.5.
 jar lib/jackson-databind-2.12.5.jar lib/jackson-annotations-2.12.5.jar 
 lib/jackson-core-2.12.5.jar lib/jackson-datatype-jdk8-2.12.5.jar lib/ja
 ckson-datatype-jsr310-2.12.5.jar lib/jackson-module-parameter-names-2.1
 2.5.jar lib/spring-boot-starter-tomcat-2.5.5.jar lib/tomcat-embed-core-
 9.0.53.jar lib/tomcat-embed-el-9.0.53.jar lib/tomcat-embed-websocket-9.
 0.53.jar lib/spring-web-5.3.10.jar lib/spring-beans-5.3.10.jar lib/spri
 ng-webmvc-5.3.10.jar lib/spring-aop-5.3.10.jar lib/spring-context-5.3.1
 0.jar lib/spring-expression-5.3.10.jar lib/spring-boot-configuration-pr
 ocessor-2.5.5.jar lib/lombok-1.18.20.jar lib/slf4j-api-1.7.32.jar lib/s
 pring-core-5.3.10.jar lib/spring-jcl-5.3.10.jar
Implementation-Title: demo
Implementation-Version: 0.0.1-SNAPSHOT
Main-Class: org.springframework.boot.loader.JarLauncher
Start-Class: com.example.demo.DemoApplication
Spring-Boot-Version: 2.5.5
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Spring-Boot-Classpath-Index: BOOT-INF/classpath.idx
Spring-Boot-Layers-Index: BOOT-INF/layers.idx

                          

使用测试

# cd target
E:javaIdeaProjectsspringboot maven 依赖jar包>cd target

# 运行jar包, localhost:8080/hello, 控制台输出
E:javaIdeaProjectsspringboot maven 依赖jar包target>java -jar hello.jar

  .   ____          _            __ _ _
 /\ / ___'_ __ _ _(_)_ __  __ _    
( ( )___ | '_ | '_| | '_ / _` |    
 \/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |___, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::                (v2.5.5)

2021-09-30 20:58:11.860  INFO 12256 --- [           main] o.s.boot.SpringApplication               : Starting application using Java 15
 on LAPTOP-D73GD8TE with PID 12256 (started by 28401 in E:javaIdeaProjectsspringboot maven 依赖jar包target)
2021-09-30 20:58:11.872  INFO 12256 --- [           main] o.s.boot.SpringApplication               : No active profile set, falling bac
k to default profiles: default
2021-09-30 20:58:13.170  INFO 12256 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8
080 (http)
2021-09-30 20:58:13.186  INFO 12256 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2021-09-30 20:58:13.186  INFO 12256 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache T
omcat/9.0.53]
2021-09-30 20:58:13.186  INFO 12256 --- [           main] o.a.catalina.core.AprLifecycleListener   : An older version [1.2.23] of the A
pache Tomcat Native library is installed, while Tomcat recommends a minimum version of [1.2.30]
2021-09-30 20:58:13.186  INFO 12256 --- [           main] o.a.catalina.core.AprLifecycleListener   : Loaded Apache Tomcat Native librar
y [1.2.23] using APR version [1.7.0].
2021-09-30 20:58:13.186  INFO 12256 --- [           main] o.a.catalina.core.AprLifecycleListener   : APR capabilities: IPv6 [true], sen
dfile [true], accept filters [false], random [true], UDS [false].
2021-09-30 20:58:13.186  INFO 12256 --- [           main] o.a.catalina.core.AprLifecycleListener   : APR/OpenSSL configuration: useAprC
onnector [false], useOpenSSL [true]
2021-09-30 20:58:13.201  INFO 12256 --- [           main] o.a.catalina.core.AprLifecycleListener   : OpenSSL successfully initialized [
OpenSSL 1.1.1c  28 May 2019]
2021-09-30 20:58:13.279  INFO 12256 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebAp
plicationContext
2021-09-30 20:58:13.279  INFO 12256 --- [           main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initia
lization completed in 1331 ms
2021-09-30 20:58:13.699  INFO 12256 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (h
ttp) with context path ''
2021-09-30 20:58:13.714  INFO 12256 --- [           main] o.s.boot.SpringApplication               : Started application in 2.303 secon
ds (JVM running for 2.7)
2021-09-30 20:58:19.766  INFO 12256 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServ
let 'dispatcherServlet'
2021-09-30 20:58:19.766  INFO 12256 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherSe
rvlet'
2021-09-30 20:58:19.766  INFO 12256 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 0 ms
hello

依赖jar外置,项目可正常运行
                                                       

                                                                                  

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/283918.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号