###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

AntCorePreferences.Malformed_URL._1=Malformed URL.
AntCorePreferences.Library_not_specified_for__{0}_4=Library not specified for: {0}
AntCorePreferences.No_library_for_task=The library {0} specified via the antTasks extension point of {1} does not exist
AntCorePreferences.No_library_for_type=The library {0} specified via the antTypes extension point of {1} does not exist
AntCorePreferences.No_library_for_extraClasspathEntry=The library {0} specified via the extraClasspathEntries extension point of {1} does not exist

AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._1=Could not find one or more classes. Please check the Ant classpath.
AntRunner.Could_not_find_one_or_more_classes._Please_check_the_Ant_classpath._2=Could not find one or more classes: \"{0}\". Please check the Ant classpath.
AntRunner.Build_Failed._3=BUILD FAILED
AntRunner.Already_in_progess=Ant build {0} already already in progress. Concurrent Ant builds are possible if you specify to build in a separate JRE.
