List of usage examples for org.eclipse.jdt.internal.core.builder JavaBuilder getProblemsFor
public static IMarker[] getProblemsFor(IResource resource)
From source file:com.liferay.ide.maven.core.MavenBundlePluginProject.java
License:Open Source License
@Override public IPath getOutputBundle(boolean cleanBuild, IProgressMonitor monitor) throws CoreException { IPath outputJar = null;//from w w w .j a va2s. c om IMavenProjectFacade projectFacade = MavenUtil.getProjectFacade(getProject(), monitor); MavenProjectBuilder mavenProjectBuilder = new MavenProjectBuilder(getProject()); // IDE-3009 delete the MANIFEST.MF to ensure that it will be regenerated by // bnd-process IFile manifest = getProject().getFile("target/classes/META-INF/MANIFEST.MF"); if (FileUtil.exists(manifest)) { manifest.delete(true, monitor); } if (cleanBuild || !_isAutoBuild()) { getProject().build(IncrementalProjectBuilder.CLEAN_BUILD, monitor); getProject().build(IncrementalProjectBuilder.FULL_BUILD, monitor); } else { getProject().build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor); } IMarker[] buildProblems = JavaBuilder.getProblemsFor(getProject()); Stream<IMarker> buildProblemsStream = Stream.of(buildProblems); List<IMarker> errorMarkerList = buildProblemsStream.filter(marker -> { try { int severirty = (int) marker.getAttribute(IMarker.SEVERITY); return IMarker.SEVERITY_ERROR == severirty; } catch (CoreException ce) { return false; } }).collect(Collectors.toList()); if (ListUtil.isNotEmpty(errorMarkerList)) { return outputJar; } mavenProjectBuilder.execJarMojo(projectFacade, monitor); MavenProject mavenProject = projectFacade.getMavenProject(monitor); String targetName = mavenProject.getBuild().getFinalName() + "." + getBundleShape(); String buildDirectory = mavenProject.getBuild().getDirectory(); File baseDirectory = mavenProject.getBasedir(); IPath buildDirPath = new Path(buildDirectory); IPath baseDirPath = new Path(baseDirectory.toString()); IPath relativePath = buildDirPath.makeRelativeTo(baseDirPath); IFolder targetFolder = _getTargetFolder(getProject(), relativePath); if (FileUtil.exists(targetFolder)) { // targetFolder.refreshLocal( IResource.DEPTH_ONE, monitor ); IPath targetFile = targetFolder.getRawLocation().append(targetName); if (FileUtil.exists(targetFile)) { outputJar = targetFile; } } return outputJar; }
From source file:org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.java
License:Open Source License
protected void updateProblemsFor(SourceFile sourceFile, CompilationResult result) throws CoreException { IMarker[] markers = JavaBuilder.getProblemsFor(sourceFile.resource); CategorizedProblem[] problems = result.getProblems(); if (problems == null && markers.length == 0) return;// ww w . ja v a 2 s. c o m this.notifier.updateProblemCounts(markers, problems); JavaBuilder.removeProblemsFor(sourceFile.resource); storeProblemsFor(sourceFile, problems); }
From source file:org.objectstyle.wolips.target.TargetBuilder.java
License:Open Source License
private void cancelBuildOnErrors() throws CoreException { Integer severityError = new Integer(IMarker.SEVERITY_ERROR); IMarker[] problemMarkers = JavaBuilder.getProblemsFor(getProject()); for (int j = 0; j < problemMarkers.length; j++) { if (problemMarkers[j].getAttribute(IMarker.SEVERITY).equals(severityError)) { // if (isResourceTargetMember(problemMarkers[j].getResource())) throw new OperationCanceledException("Compilation Errors"); }/*from w w w . j av a2 s . co m*/ } }
From source file:org.objectstyle.wolips.target.TargetBuilder.java
License:Open Source License
protected IProject[] build(int kind, Map args, IProgressMonitor monitor) throws CoreException { State buildState;// w w w . j ava2 s . c o m String buldStateKey; IProject[] result = null; IProject project = getProject(); List targets = targets(); if (targets == null) return null; IJavaProject javaProject = JavaCore.create(project); IPath projectOutputLocation = javaProject.getOutputLocation(); IClasspathEntry[] projectClasspath = javaProject.getRawClasspath(); _problemMarkers = new HashMap(); TargetBuilderPlugin plugin = TargetBuilderPlugin.getDefault(); try { for (int i = 0; i < targets.size(); i++) { BuildTarget target = (BuildTarget) targets.get(i); buldStateKey = project.getName() + "/" + target.name(); javaProject.setOutputLocation(target.outputLocation(), monitor); javaProject.setRawClasspath(target.classPathEntries(), monitor); buildState = plugin.buildStateForKey(buldStateKey); JavaModelManager.getJavaModelManager().setLastBuiltState(project, buildState); result = super.build(kind, args, monitor); buildState = (State) JavaModelManager.getJavaModelManager().getLastBuiltState(project, monitor); plugin.setBuildStateForKey(buildState, buldStateKey); registerProblemMarkers(JavaBuilder.getProblemsFor(getProject())); // cancelBuildOnErrors(javaProject); } } finally { javaProject.setOutputLocation(projectOutputLocation, monitor); javaProject.setRawClasspath(projectClasspath, monitor); updateProblemMarkers(); cancelBuildOnErrors(); } return result; }