private String getModuleVersion(String libPath, String jarNameNoVersion) { File file = new File(libPath); Collection<File> files = FileUtils.listFiles(file, new FileFilter(jarNameNoVersion), null); for (File temp : files) { //自取第一个 String fileName = temp.getName(); int start = StringUtils.indexOf(fileName, "-"); int end = StringUtils.indexOf(fileName, ".jar"); return StringUtils.substring(fileName, start + 1, end); } return ""; }
FileFilter 内部类
private static class FileFilter implements IOFileFilter { private String jarNameNoVersion; public FileFilter(String jarNameNoVersion) { this.jarNameNoVersion = jarNameNoVersion; } @Override public boolean accept(File file) { if (file.getName().contains(jarNameNoVersion)) { return true; } else { return false; } } @Override public boolean accept(File dir, String name) { return true; } }