关于maven的一些记录


普通maven包含依赖打包成jar

使用shade插件,可以将依赖包含在jar中,指定入口类即可使用java -jar命令启动。
查看更多 shade 用法


    
        
            org.apache.maven.plugins
            maven-shade-plugin
            3.1.1
            
                
                    
                    package
                    
                        shade
                    
                    
                        
                        true
                        
                            
                                
                                com.example.App
                            
                        
                    
                
            
        
    

普通maven项目中的资源管理

普通maven项目编译时只包含class文件,其他文件都会排除,如项目中的xxx.properties文件,
xxx.xml文件等。项目的pom.xml文件加入以下配置,编译时可包含资源文件。


    
        
            
            src/main/resources
            
                
                **
            
            true
        
    

项目资源文件一般放在 src/main/resources 目录下,打包时resources里的文件和目录会直接到
jar文件中,通过解压软件可以看到。调用时可使用以下代码获取配置文件或者文件流

public class Test {
    public static void main(String[] args) {
        Properties config = new Properties();
        try(InputStream is = Test.class.getResourceAsStream("/xxx.properties")) {
            config.load(new InputStreamReader(is,"UTF-8"));
        } catch (Exception e) {
            e.printStackTrace();
        }
        System.out.println(config.getProperty("key"));
    }
}