public void build(DirtyFilesHolder<ArtifactRootDescriptor, ArtifactBuildTarget> holder) throws ProjectBuildException, IOException {
      if (startBuild()) {
        createAndRunArtifactTasks(ArtifactBuildTaskProvider.ArtifactBuildPhase.PRE_PROCESSING);

        processDirtyFiles(holder);

        collectMissingFiles();
        processFiles();

        collectMissingJars();
        buildJars();

        createAndRunArtifactTasks(ArtifactBuildTaskProvider.ArtifactBuildPhase.FINISHING_BUILD);
        createAndRunArtifactTasks(ArtifactBuildTaskProvider.ArtifactBuildPhase.POST_PROCESSING);
      }
    }
public void build(DirtyFilesHolder<ArtifactRootDescriptor, ArtifactBuildTarget> holder)