使用maven shade plugin 打可执行Jar包


eclipse里有一个功能叫做“打可执行(runnable) jar包”, 用这个功能可以把一个工程自身和所有依赖包打成一个fat jar,并且指定Main方法,这样直接使用java jar xxx.jar就可以运行代码了。

但是在不使用eclipse的时候呢?其实,借助maven,我们很容易实现同样功能。maven提供了一个shade plugin,可以用来打fat jar, 同时也提供了指定main方法的功能。


  ...
  
    
      
        org.apache.maven.plugins
        maven-shade-plugin
        3.0.0
        
          
            package
            
              shade
            
            
              
                
                  org.sonatype.haven.HavenCli
                
              
            
          
        
      
    
  
  ...

然后在用maven打包的时候就可以打出直接可运行的包了。