美文网首页
java、spring获取项目下依赖jar中的某种资源文件,正则

java、spring获取项目下依赖jar中的某种资源文件,正则

作者: 把爱放下会走更远 | 来源:发表于2019-04-24 15:30 被阅读0次

我是想在war项目中想获取下依赖的一个jar中lua脚本文件,projectA,依赖了otherA的一个项目(jar),otherA项目有几个lua脚本作为资源文件打包在jar中,现在在projectA中我想检测下所有的lua,尝试了很多方式获取;

①原生ClassLoader中取获取,其实应该是可以获取到的,但是源码调试了很久进去没有找到有用的地方,最后到了sun包,看不到源码,就放弃了

②最后还是想到了spring,因为spring里面有太多的工具类可以使用,最后再idea里面随便搜搜类,真的找到了,下面给出代码让大家参考下

try {
//这里的resourceLoader直接Autowired注入就好了,是spring容器中有的一个类
            ResourcePatternResolver resolver = ResourcePatternUtils.getResourcePatternResolver(resourceLoader);
            MetadataReaderFactory metaReader = new CachingMetadataReaderFactory(resourceLoader);
            Resource[] resources = resolver.getResources("classpath*:*.lua");
            for (Resource r : resources) {
                System.out.println(r.getFilename());
            }

        } catch (Exception e) {

        }
//得到解析文件内容
String s = IOUtils.toString(r.getURL(), Charset.defaultCharset());
//或者                IOUtils.toString(Channels.newInputStream(r.readableChannel()),Charset.defaultCharset());

相关文章

网友评论

      本文标题:java、spring获取项目下依赖jar中的某种资源文件,正则

      本文链接:https://www.haomeiwen.com/subject/kxuggqtx.html