<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- /*******************************************************************************
 * Copyright (c) 2000, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/ -->
<link rel="stylesheet" type="text/css" href="../../org.eclipse.wtp.doc.user/common.css" />
<title>projectGetErrors</title>
</head>
<body id="tantprojectgeterrors"><a name="tantprojectgeterrors"><!-- --></a>
<h1 class="topictitle1">projectGetErrors</h1>
<div><p>This task gets the errors for the specified project. It is a subset
of the projectBuild task (it does not do a build, it just gets project errors
regardless of how they were created)</p>
<div class="section"> <p><span class="uicontrol">Parameters</span></p>

<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th valign="top" width="21.052631578947366%" id="d0e21">Attribute</th>
<th valign="top" width="56.84210526315789%" id="d0e23">Description</th>
<th align="left" valign="top" width="22.105263157894736%" id="d0e25">Required</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">ProjectName</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Name of project to be built </td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">Yes</td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">FailOnError</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Whether or not builds should fail if the project contains
any errors</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> false</em></td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">ShowErrors</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">The problem level to count and treat as a build error</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> true</em></td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">SeverityLevel</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Whether to overwrite if the file already exists.</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> ERROR</em>. May be <em> ERROR</em>, <em> WARNING</em>,
or <em> INFORMATION</em>.</td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">CountValidationErrors</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Whether or not to count Validation problems as project
Errors</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> true</em></td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">PropertyCountName</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Property to receive the project error count</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> ProjectErrorCount</em></td>
</tr>
<tr><td valign="top" width="21.052631578947366%" headers="d0e21 ">PropertyMessagesName</td>
<td valign="top" width="56.84210526315789%" headers="d0e23 ">Property to receive the project error messages</td>
<td align="left" valign="top" width="22.105263157894736%" headers="d0e25 ">No, default is<em> ProjectErrorMessages</em></td>
</tr>
</tbody>
</table>
</div>
<p><span class="uicontrol">Examples</span></p>
<ul><li>Retrieve and display the error+warning count and error+warning messages
for "myProject":<pre>&lt;projectGetErrors 
	ProjectName="myProject"
	SeverityLevel="WARNING"
	PropertyCountName="myProjectErrorCount
	PropertyMessagesName="myProjectErrorMessages" /&gt;
&lt;echo message="projectGetErrors: projectName=${projectName}
	project Error+Warning Count=${myProjectErrorCount}
	project Error+Warning Messages=${myProjectErrorMessages}" /&gt;</pre>
</li>
</ul>
 </div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="../topics/ph-antgeneral.html" title="">General Ant tasks</a></div>
</div>
<div class="reltasks"><strong>Related tasks</strong><br />
<div><a href="../topics/tantcapturebuildmessages.html" title="This task captures Ant build messages and allows them to be searched or displayed, and allows conditional Ant build failures depending on whether or not a specified string is in the captured build messages.">captureBuildMessages</a></div>
<div><a href="../topics/tantcompilew.html" title="This task compiles the entire workspace. It performs the same action as javac. While this task is running, all the validation and other builders are turned of">compileWorkspace</a></div>
<div><a href="../topics/tantgetj.html" title="This task gets the error count for the last internal javac compilation of the specified project.">getJavacErrorCount</a></div>
<div><a href="../topics/tantgetp.html" title="This task gets the specified project information.">getProjectData</a></div>
<div><a href="../topics/tantproj.html" title="This task builds the specified project.">projectBuild</a></div>
<div><a href="../topics/tantprojectimport.html" title="This task imports an existing file system project into a workspace.">projectImport</a></div>
<div><a href="../topics/tantprojectsetbuild.html" title="This task builds a set of Eclipse projects using an existing Eclipse team Project Set File (&quot;PSF&quot;). The PSF must have been first created using an Eclipse team &quot;Project Set Export&quot; command, and then the task projectSetImport must have been used to import those projects into a workspace.">projectSetBuild</a></div>
<div><a href="../topics/tantprojectsetimport.html" title="This task imports an existing Eclipse team Project Set File (PSF) into a workspace. The PSF must have been first created using an Eclipse team &quot;Project Set Export&quot; command.">projectSetImport</a></div>
<div><a href="../topics/tantsetd.html" title="This task sets the internal Java compilation debug level, and returns the current settings.">setDebugInfo</a></div>
<div><a href="../topics/tantworkspacebuild.html" title="This task builds the entire workspace.">workspaceBuild</a></div>
<div><a href="../topics/tantworkspacegeterrors.html" title="This task gets the errors for the entire workspace. It is a subset of the workspaceBuild task (it does not do a build, it just gets workspace errors regardless of how they were created).">workspaceGetErrors</a></div>
<div><a href="../topics/tantworkspacepreferencefile.html" title="This task reads a property file containing Eclipse workspace preferences and sets those preferences.">workspacePreferenceFile</a></div>
<div><a href="../topics/tantworkspacepreferenceget.html" title="This task gets Eclipse workspace preferences.">workspacePreferenceGet</a></div>
<div><a href="../topics/tantworkspacepreferenceset.html" title="This task sets Eclipse workspace preferences.">workspacePreferenceSet</a></div>
</div>
</div></body>
</html>