code: private void processLessFile(DynamicSkinInstanceData data) throws IOException, LessException {
  
          // Prepare the LESS sources for compilation
          final LessSource lessSource = new LessSource(new File(getSkinLessPath(data)));
  
          if (logger.isDebugEnabled()) {
              final String result = lessSource.getNormalizedContent();
              final File lessSourceOutput =
                      new File(getSkinCssTempFileAbsolutePath(data) + "lesssource");
              IOUtils.write(result, new FileOutputStream(lessSourceOutput));
              logger.debug(
                      "Full Less source from include file {} is at {}, output css will be written to {}",
                      getSkinLessPath(data),
                      lessSourceOutput,
                      getSkinCssPath(data));
          }
  
          final LessCompiler compiler = new LessCompiler();
          compiler.setCompress(true);
          final File tempOutputFile = new File(getSkinCssTempFileAbsolutePath(data));
          compiler.compile(lessSource, tempOutputFile);
          moveCssFileToFinalLocation(data, tempOutputFile);
      }
docs: Less compile the include file into a temporary css file. When done rename the temporary css
  file to the correct output filename. Since the less compilation phase takes several seconds,
  this insures the output css file is does not exist on the filesystem until it is complete.