SpringBoot快速打包注册服务之appassembler教程+绕坑

原文链接: https://blog.csdn.net/baidu_32078207/article/details/98937361

转自:https://blog.csdn.net/baidu_32078207/article/details/98937361

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/baidu_32078207/article/details/98937361
SpringBoot快速打包注册服务之appassembler教程+绕坑

片头:本片所有内容均来自网上和工作上的整理希望后来人少走弯路
背景:用springBoot开发结束会须需要打包发布,当服务多的时候不宜管理,我们注册成服务就好看多了,也节省效率,节约时间少掉头发。
适用范围:SpringBoot+maven
结果展示


废话不罗嗦最后一首歌

这是必要的pom配置所有pom都要加!你滴明白


                org.apache.maven.plugins
                maven-compiler-plugin
                3.7.0
                
                    ${java.version}
                    ${java.version}
                

            

            
            
                org.apache.maven.plugins
                maven-jar-plugin
                2.6
                
                    
                    
                        
                        
                        *.yml
                        *.xml
                        *.properties
                        static/**
                        
                        *.conf
                        tools/**
                    

                

                
                    
                        package
                        
                            jar
                        

                    

                

            

            
                org.apache.maven.plugins
                maven-resources-plugin
                2.6
                
                    
                        copy-command
                        package
                        
                            copy-resources
                        

                        
                            UTF-8
                            ${project.build.directory}/config
                            
                                
                                    ${project.basedir}/config
                                    true
                                

                            

                        

                    

                    
                        copy-resource
                        package
                        
                            copy-resources
                        

                        
                            UTF-8
                            target/ext
                            
                                
                                    ${project.basedir}/src/main/resources
                                    true
                                    
                                        disconf.properties
                                    

                                

                            

                        

                    

                    
                        copy-static
                        package
                        
                            copy-resources
                        

                        
                            UTF-8
                            ${project.build.directory}/static
                            
                                
                                    ${project.basedir}/src/main/resources/static
                                    true
                                

                            

                        

                    

                

            

            
            
            
                org.apache.maven.plugins
                maven-enforcer-plugin
                1.4.1
                
                    
                        enforce
                        
                            
                                
                            

                        

                        
                            enforce
                        

                    

                

            


            
            
            
                org.codehaus.mojo
                appassembler-maven-plugin
                2.1.0
                
                    UTF-8
                    bin
                    
                    ext
                    temp
                    logs
                    lib
                    flat
                    ${project.build.directory}/dist
                    config
                    true
                    config
                    
                        .sh
                    

                    
                        windows
                        unix
                    

                    
                        
                            
                            ${artifactId}
                            
                            com.djhu.DemoApplication                    
                            
                            jsw
                        

                            
                                
                                    jsw
                                    
                                        
                                        linux-x86-64
                                        windows-x86-64
                                        
                                    

                                    
                                        
                                            app.base.envvar
                                            BASEDIR
                                        

                                        
                                            configuration.directory.in.config
                                            config
                                        

                                        
                                            wrapper.ping.timeout
                                            120
                                        

                                        
                                        
                                            configuration.directory.in.classpath.first
                                            ext
                                        

                                        
                                            set.default.REPO_DIR
                                            lib
                                        

                                        
                                            wrapper.logfile
                                            logs/wrapper.log
                                        

                                    

                                

                            

                            
                                
                                    appserver.home=.
                                    appserver.base=%BASEDIR%
                                    java.io.tmpdir=temp
                                

                                
                                
                                
                                    -server
                                    
                                    -Xdebug
                                    
                                    
                                    -XX:+HeapDumpOnOutOfMemoryError
                                    -XX:HeapDumpPath=logs/heap-dump.hprof
                                    
                                    -XX:+UseG1GC
                                    -XX:MaxGCPauseMillis=200
                                    -XX:InitiatingHeapOccupancyPercent=45
                                    -XX:G1ReservePercent=10
                                    -XX:NewRatio=2
                                    -XX:SurvivorRatio=8
                                    -XX:MaxTenuringThreshold=15
                                    
                                    -Xloggc:logs/gc.log
                                    -XX:GCLogFileSize=10M
                                    -XX:NumberOfGCLogFiles=10
                                    -XX:+UseGCLogFileRotation
                                    -XX:+PrintGCDateStamps
                                    -XX:+PrintGCTimeStamps
                                    -XX:+PrintGCDetails
                                    -XX:+PrintHeapAtGC
                                    -XX:+PrintGCApplicationStoppedTime
                                    -XX:+DisableExplicitGC
                                    -verbose:gc
                                

                            

                        

                    

                

                
                    
                        generate-jsw-scripts
                        package
                        
                            generate-daemons
                        

                    

                

            

            
            
                org.apache.maven.plugins
                maven-assembly-plugin
                3.1.0
                
                    UTF-8
                    false
                    
                    ${artifactId}_v2.0.0.2_${timestamp}
                    
                        
                        src/main/resources/package.xml                    

                

                
                    
                        make-assembly
                        package
                        
                            single
                        

                    

                

            

            
                org.codehaus.mojo
                buildnumber-maven-plugin
                1.4
                
                    yyyyMMdd
                

                
                    
                        
                            create-timestamp
                        

                    

                

                false
            


然后一个配置文件

          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0
          http://maven.apache.org/xsd/assembly-2.0.0.xsd">
    dist
   
        zip
   

    true

   
       
            target/ext
            ext
            0755
            0755
       

       
            target/dist/jsw/${artifactId}/bin
            bin
           
            0755
            0755
       

       
            target/dist/jsw/${artifactId}/config/tools
            bin
            0755
            0755
           
                **.sh
                **.bat
           

       

       
            target/dist/jsw/${artifactId}/config
            config
           
           
               
                *.yml
                *.xml
                *.properties
                static/**
               
                *.conf
                *.json
           

           
               
                tools/**
           

            0644
            0744
       

       
            target/dist/jsw/${artifactId}/lib
            lib
            0644
            0744
       

       
            target/dist/jsw/${artifactId}/logs
            logs
            0644
            0744
       

       
            target/dist/jsw/${artifactId}/temp
            temp
            0644
            0744
       

   



这就完成啦!no no no no

有坑

1.绿色框注的是一些配置文件但是
你的配置文件里有“classpath:”这种的不能从配置文件摘除里拿出来否则的话会报错N个注入失败或者改成classpath:*

你把这个节点includes去掉的话就可以把所有的resources文件都露出来了但是不行,一般都会有mybatis的配置文件会找不到XML然后提示注入失败,那有的人问了,我想把一些模板类型文件展现出来实施有时候需要修改,或者其他需要怎么办!ok
这个节点改个    ID 然后文件路径注意下就可以了,很简单的
2不能有强调springBoot要这么用否则回有“找不到主类”

    
    
        
            org.springframework.boot
            spring-boot-dependencies
            2.1.7.RELEASE
            pom
            import
        

    



明白了么
3剩余的也就没什么了,还是比较简单的就是配置文件有点头疼再就是注册才能启动否则启动不了
4最后奉上资源(没办法最便宜的也要5分)
https://download.csdn.net/download/baidu_32078207/11505255

最后一句话

你眸光流转,会心一笑,胜过千万句对白;你真情传递,脉脉不语,胜过万语千言
————————————————
版权声明:本文为CSDN博主「巧克力牌猫头鹰」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/baidu_32078207/article/details/98937361

 

你可能感兴趣的:(springboot)