###############################################################################
# Copyright (c) 2004, 2013 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
###############################################################################

AntNewJavaProjectWizard_0=New Java Project
AntBuildfileExportWizard_0=Export
AntBuildfileExportPage_0=Generate Ant Buildfiles
AntBuildfileExportPage_10=Buildfile export failed: {0}. See the error log for more details.
AntBuildfileExportPage_11=&Select All 
AntBuildfileExportPage_12=&Deselect All
AntBuildfileExportPage_13=&Check projects for Ant compatibility
AntBuildfileExportPage_14=Analyze if source directories have no dependency cycle and are specified in correct order.
AntBuildfileExportPage_15=Create &target to compile project using Eclipse compiler
AntBuildfileExportPage_16=Name for &Ant buildfile:
AntBuildfileExportPage_17=&JUnit output directory:
AntBuildfileExportPage_18=Select one or more projects to export.
AntBuildfileExportPage_19=Build file name is required.
AntBuildfileExportPage_1=Generates Ant buildfiles based on the configuration of the Java projects
AntBuildfileExportPage_2=Select the projects to use to &generate the Ant buildfiles:
AntBuildfileExportPage_20=JUnit output directory name is required.
AntBuildfileExportPage_3=Are you sure you want to overwrite the buildfiles for these projects?
AntBuildfileExportPage_4=Overwrite Buildfiles?
AntBuildfileExportPage_creating_build_files=Creating Ant build files...
AntBuildfileExportPage_cycle_error_in_project=A cycle error was detected in the build path of project {0}
AntBuildfileExportPage_cycle_error_in_projects=A cycle error was detected in the build path of projects: {0}
AntBuildfileExportPage_cycle_warning_in_project=A cycle warning was detected in the build path of project {0}
AntBuildfileExportPage_cycle_warning_in_projects=A cycle warning was detected in the build path of projects: {0}
AntNewJavaProjectPage_9=Create a Java Project from an Ant Buildfile
AntNewJavaProjectPage_0=Specified buildfile does not exist
AntNewJavaProjectPage_10=Create a new Java project based on the specification of a javac task in the Ant buildfile. This does not copy the source contents to the workspace.
AntNewJavaProjectPage_11=&Ant buildfile:
AntNewJavaProjectPage_12=&Project name:
AntNewJavaProjectPage_13=B&rowse...
AntNewJavaProjectPage_14=Ant Project
AntNewJavaProjectPage_15=No buildfile selected
AntNewJavaProjectPage_16=Location error
AntNewJavaProjectPage_17=Specified buildfile could not be parsed successfully
AntNewJavaProjectPage_18=Project name must be specified
AntNewJavaProjectPage_19=A project with the specified name already exists
AntNewJavaProjectPage_1=Specified buildfile does not contain a javac task
AntNewJavaProjectPage_21=Error occurred creating project
AntNewJavaProjectPage_22=Error occurred creating Java project from buildfile
AntNewJavaProjectPage_23=Project name is not a valid: {0}
AntNewJavaProjectPage_24=&Link to the buildfile in the file system
AntNewJavaProjectPage_2=The file selected is not a valid Ant buildfile
AntNewJavaProjectPage_3=&Select javac declaration to use to define project:
BuildFileCreator_generating_buildfile_for=Generating build file for {0}...
JavacTableLabelProvider_0=\"javac\" task found in target \"{0}\"
ProjectCreator_0=Problem setting the classpath of the project from the javac classpath: {0}
SourceAnalyzer_0=There is a build cycle in the source directories of project \"{0}\". The exported Ant buildfile might not compile your sources correctly until you eliminate the cycle: 
SourceAnalyzer_1=Cycle detected
SourceAnalyzer_2=Class path order problem detected
SourceAnalyzer_3=The build class path order of the source directories of project \"{0}\" is not correct. Exported Ant buildfile will not compile your sources correctly until you swap the order of these directories: