有很多时间需要将 resource 加入到 classpath中 如一些配置文件,如果写死配置文件的路径,不方便迁移,不够优雅,所以我们必须在代码中写相对路径,我一般通过
getClass().getResourceAsStream("/xxx.txt")
来获取这些配置文件, 通过 classloader 也是可以的。
在一般生产环境中,java程序都是通过命令行写成的, 命令行的写法尤其重要。
正确的写法是:
java -cp xx.jar:./lib/*:./conf xx.xx.main
lib 是依赖的jar包放里面 一定要 ./lib/*
conf 就是所有的配置文件 一定要 ./conf