История изменений
Исправление foror, (текущая версия) :
В общем все оказалось еще проще, в 7-ке же есть FileSystems, поэтому не надо городить всякие велосипеды как это делает либа Reflections:
Enumeration<URL> resources = Ostov.class.getClassLoader().getResources(basePath);
...
if ("jar".equals(url.getProtocol())) {
FileSystem fs = FileSystems.newFileSystem(url.toURI(), Collections.emptyMap());
startDir = fs.getPath(basePath);
}
else {
startDir = Paths.get(url.toURI());
}
// Ну а дальше
Files.walkFileTree(startDir, new SimpleFileVisitor<Path>() {
...
})
Исправление foror, :
В общем все оказалось еще проще, в 7-ке же есть FileSystems, поэтому не надо городить всякие велосипеды как это делает либа Reflections. Всё проще:
Enumeration<URL> resources = Ostov.class.getClassLoader().getResources(basePath);
...
if ("jar".equals(url.getProtocol())) {
FileSystem fs = FileSystems.newFileSystem(url.toURI(), Collections.emptyMap());
startDir = fs.getPath(basePath);
}
else {
startDir = Paths.get(url.toURI());
}
// Ну а дальше
Files.walkFileTree(startDir, new SimpleFileVisitor<Path>() {
...
})
Исправление foror, :
В общем все оказалось еще проще, чем я думал, в 7-ке же есть FileSystems, поэтому не надо городить всякие велосипеды, как это делает либа Reflections. Всё проще:
Enumeration<URL> resources = Ostov.class.getClassLoader().getResources(basePath);
...
if ("jar".equals(url.getProtocol())) {
FileSystem fs = FileSystems.newFileSystem(url.toURI(), Collections.emptyMap());
startDir = fs.getPath(basePath);
}
else {
startDir = Paths.get(url.toURI());
}
// Ну а дальше
Files.walkFileTree(startDir, new SimpleFileVisitor<Path>() {
...
})
Исходная версия foror, :
В общем все оказалось еще проще, чем я думал, в 7-ке же есть FileSystems, поэтому не надо городить всякие велосипеды, как это делает либа Reflections. Всё проще:
if ("jar".equals(url.getProtocol())) {
FileSystem fs = FileSystems.newFileSystem(url.toURI(), Collections.emptyMap());
startDir = fs.getPath(basePath);
}
else {
startDir = Paths.get(url.toURI());
}
// Ну а дальше
Files.walkFileTree(startDir, new SimpleFileVisitor<Path>() {
...
})