###############################################################################
# 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
###############################################################################

AntTargetNode_2=\ [default]
AntImportNode_0=Security exception during import
AntTaskNode_0=Security problem configuring task
AntElementNode_9=\ [from {0}]

AntModel_1=\ line:
AntModel_43=Default target {0} does not exist in this project
AntModel_44=Target {0} does not exist in this project
AntProjectNodeProxy_0=Buildfile not found
AntProjectNodeProxy_1=No targets could be determined
AntDefiningTaskNode_0=Task could not be defined within the Ant Editor context
AntDefiningTaskNode_1=Security exception attempting to define type
AntProjectNode_0=<Unable to parse as an Ant buildfile>
AntPropertyNode_0=Property could not be set within the Ant Editor context
AntPropertyNode_1=Security exception attempting to set property
