com.github.dennisit.vplus.data.utils.JarUtils Maven / Gradle / Ivy
package com.github.dennisit.vplus.data.utils;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.context.support.GenericApplicationContext;
import org.springframework.core.io.Resource;
import java.net.URL;
import java.util.Arrays;
import java.util.List;
@Slf4j
public class JarUtils {
private static GenericApplicationContext context = new GenericApplicationContext();
/**
* Spring加载文件加载文件
*
* @param location 文件路径: "classpath*:/resources/**"
* @return 文件路径URL
*/
public static List loadJarsFile(String location) {
log.debug("[Webjars Path]: {}", location);
List resources = Lists.newArrayList();
try {
Resource[] rs = context.getResources(location);
List list = ArrayUtils.isNotEmpty(rs) ? Arrays.asList(rs) : Lists.newArrayList();
for (Resource r : list) {
URL url = r.getURL();
if (null == url || url.toString().endsWith("/")) {
continue;
}
resources.add(r);
}
return resources;
} catch (Exception e) {
log.error(e.getLocalizedMessage(), e);
}
return Lists.newArrayList();
}
}