maven打可执行jar包pom配置

maven打可执行jar包pom配置如下:


    
      
        src/main/resources
        
          
          **/*.*
        
      
    
    
      
        maven-compiler-plugin
        
          1.8
          1.8
          
          utf8
        
      
      
        org.apache.maven.plugins
        maven-shade-plugin
        2.3
        
          
            package
            
              shade
            
            
              
                
                  com.thizgroup.main.MainClass
                
              
            
          
        
      
      
        org.apache.maven.plugins
        maven-jar-plugin
        3.0.2
        
          
            
              true
              com.thizgroup.main.MainClass 
            
          
        
      
    
  

把这段配置复制到项目的pom文件中,需要修改mainClass的包路径,然后执行mvn clean package -Dmaven.test.skip=true

打包,

打包,在命令行窗口运行jar,

 java -jar .\tank-01-1.0-SNAPSHOT.jar

运行可能会出现配置文件或者其他资源文件找不到的情况,比如,

Exception in thread "main" java.lang.ExceptionInInitializerError
        at com.mashibing.tank.TankFrame.(TankFrame.java:19)
        at com.mashibing.tank.Main.main(Main.java:6)
Caused by: java.lang.NullPointerException
        at java.util.Properties$LineReader.readLine(Unknown Source)
        at java.util.Properties.load0(Unknown Source)
        at java.util.Properties.load(Unknown Source)
        at com.mashibing.tank.PropertyMgr.(PropertyMgr.java:18)
        ... 2 more

原因可能是打包没有把这个资源文件打进去,使用压缩工具打开jar包看看里面是不是存在这个资源文件,如果不存在则考虑打包的资源文件配置有问题,修改resources的配置后重新打包即可


      
        src/main/resources
        
          
          **/*.*
        
      
    

 

你可能感兴趣的:(java,j2se,打jar包,maven配置)