使用Maven构建Dubbo服务的可执行jar包

Dubbo-使用Maven构建Dubbo服务的可执行jar包

一、为什么要构建Dubbo服务的可执行jar包?

  1.1 Dubbo服务运行方式比较

    ✎使用Servlet容器运行(Tomcat、Jetty等)  ---不可取

      --缺点:增加复杂性(多了容器的端口)

          浪费内存资源,Servlet运行要占用一定的内存

    ✎自建main()方法来运行Spring容器  ---不可取 (本地调试可用)

      --缺点:Dubbo本身提供的高级特性没用上

           自己编写启动类可能会有缺陷

    ✎使用Dubbo框架提供main()方法来运行Spring容器  ---建议使用

      --优点:框架本身提供(com.alibaba.dubbo.container.Main)

          可实现优雅关机(ShutdownHook)

  1.2 官方文档查看

    http://dubbo.io/books/dubbo-user-book/demos/service-container.html

    “6.40 容器服务”部分

  综上所述所以要构建Dubbo服务的可执行jar包(说了句废话,偷笑!!)

二、怎么构建?

  2.1 看看工程目录

  这个就是我们要打包成Dubbo服务的工程

使用Maven构建Dubbo服务的可执行jar包_第1张图片

  2.2 maven插件

复制代码


  
    ${project.build.directory}/classes
    src/main/resources
    true
    
      **/*.xml
      **/*.properties
    
  
  
  
   
    ${project.build.directory}/classes/META-INF/spring
    src/main/resources/spring
    true
    
      spring-context.xml
    
  



  
    
    
      org.eclipse.m2e
      lifecycle-mapping
      1.0.0
      
        
          
            
              
                org.apache.maven.plugins
                maven-dependency-plugin
                [2.0,)
                
                  copy-dependencies
                
              
              
                
              
            
          
        
      
    
  


  
  
    org.apache.maven.plugins
    maven-jar-plugin
    
      target/classes/
      
        
          com.alibaba.dubbo.container.Main
          
          false
          true
          lib/
        
        
          .
        
      
    
  
  
    org.apache.maven.plugins
    maven-dependency-plugin
    
      
        copy-dependencies
        package
        
          copy-dependencies
        
        
          jar
          jar
          false
          
            ${project.build.directory}/lib
          
        
      
    
  

复制代码

2.3 打包

maven clean package 只打包

maven clean install    打包并部署到本地仓库

maven clean deploy  打包部署到本地仓库,并提交到远程私服

打包后会在项目target目录出现,xxx.jar  jar包和lib在同一目录下

执行 java -jar -Dmode devlop 启动服务命令

在本地调试时可以 选择 idea  的run/debug configurations

使用Maven构建Dubbo服务的可执行jar包_第2张图片

你可能感兴趣的:(Dubbo,dubbo)