boolean () { String outputFilePath = artifact.getOutputFilePath(); if (StringUtil.isEmpty(outputFilePath)) { context.processMessage(new CompilerMessage(getBuilderName(), BuildMessage.Kind.ERROR, JpsBuildBundle.message("build.message.cannot.build.0.artifact.output.path.is.not.specified", artifact.getName()))); return false; } final ArtifactSorter sorter = new ArtifactSorter(pd.getModel()); final Map<JpsArtifact, JpsArtifact> selfIncludingNameMap = sorter.getArtifactToSelfIncludingNameMap(); final JpsArtifact selfIncluding = selfIncludingNameMap.get(artifact); if (selfIncluding != null) { context.processMessage(new CompilerMessage(getBuilderName(), BuildMessage.Kind.ERROR, JpsBuildBundle.message("build.message.cannot.build.0.artifact.it.includes.itself", artifact.getName(), selfIncluding.getName(), selfIncluding.equals(artifact) ? 0 : 1))); return false; } String messageText = JpsBuildBundle.message("progress.message.building.artifact.0", artifact.getName()); context.processMessage(new ProgressMessage(messageText)); LOG.debug(messageText); return true; }