in meecrowave-core/src/main/java/org/apache/meecrowave/Meecrowave.java [1109:1140]
private String newBaseDir() {
deleteBase = false;
String dir = configuration.getDir();
if (dir != null) {
final File dirFile = new File(dir);
if (dirFile.exists()) {
if (base != null && base.exists() && configuration.isDeleteBaseOnStartup()) {
IO.delete(base);
}
return dir;
}
IO.mkdirs(dirFile);
return dirFile.getAbsolutePath();
}
final String base = System.getProperty("meecrowave.base");
if (base != null && new File(base).exists()) {
return new File(base).getAbsolutePath();
}
deleteBase = true;
final List<String> lookupPaths = new ArrayList<>();
lookupPaths.add("target");
lookupPaths.add("build");
final File file = lookupPaths.stream()
.map(File::new)
.filter(File::isDirectory)
.findFirst()
.map(file1 -> new File(file1, "meecrowave-" + System.nanoTime())).orElse(ownedTempDir);
IO.mkdirs(file);
return file.getAbsolutePath();
}