###############################################################################
#  Copyright (c) 2000, 2018 IBM Corporation and others.
#
#  This program and the accompanying materials
#  are made available under the terms of the Eclipse Public License 2.0
#  which accompanies this distribution, and is available at
#  https://www.eclipse.org/legal/epl-2.0/
#
#  SPDX-License-Identifier: EPL-2.0
# 
#  Contributors:
#     IBM Corporation - initial API and implementation
#     BEA - Daniel R Somerfield - Bug 88939
#     Remy Chi Jian Suen - Bug 221973
#     Axel Richard (Obeo) - Bug 41353 - Launch configurations prototypes
###############################################################################

JavaArgumentsTab__Arguments_16=Arguments
JavaArgumentsTab__Program_arguments__5=Program &arguments:
JavaArgumentsTab_Exception_occurred_reading_configuration___15=Exception occurred reading configuration:
JavaArgumentsTab_VM_ar_guments__6=VM ar&guments:
JavaArgumentsTab_AttributeLabel_ActivateHelpfulNullPointerExceptions=Activate helpful null pointer exceptions
JavaArgumentsTab_AttributeLabel_ProgramArguments=Program arguments
JavaArgumentsTab_AttributeLabel_VMArguments=VM arguments
JavaArgumentsTab_AttributeLabel_UseAtStart=Use at start on 1st thread
JavaArgumentsTab_AttributeLabel_WorkingDirectory=WorkingDirectory
JavaArgumentsTab_AttributeTooltip_ActivateHelpfulNullPointerExceptions=You need at least Java14 to make use of it!

RuntimeClasspathAdvancedDialog_6=Add &Variable String:
RuntimeClasspathAdvancedDialog_7=Va&riables...

VMArgumentsBlock_0=Use the -&XstartOnFirstThread argument when launching with SWT
VMArgumentsBlock_1=Use temporary JAR to speci&fy classpath (to avoid classpath length limitations)
VMArgumentsBlock_2=Use the -XX:+ShowCode&DetailsInExceptionMessages argument when launching
VMArgumentsBlock_VM_Arguments=VM Arguments

JavaConnectTab__Allow_termination_of_remote_VM_6=&Allow termination of remote VM
JavaConnectTab_Conn_ect_20=Connect
JavaConnectTab_Connect_ion_Type__7=Connect&ion Type:
JavaConnectTab_Project_does_not_exist_14=Project does not exist
JavaConnectTab_Connection_Properties_1=Conn&ection Properties:
JavaConnectTab_Unable_to_display_connection_arguments__2=Unable to Display Connection Arguments
JavaConnectTab__is_invalid__5=\ is invalid.

JavaJRETab__JRE_1=JRE
JavaJRETab_7=undefined
JavaJRETab_8=Workspace &default JRE ({0})
JavaJRETab_9=&Project JRE ({0})
JavaJRETab_4=workspace
JavaJRETab_3=project
JavaJRETab_2=JRE
JavaJRETab_1=Execution environment
JavaJRETab_10=Applying JRE Changes
JavaJRETab_11=Related tabs needs be updated due to the change, Go ahead with apply?
JavaJRETab_12=&Apply Now
JavaJRETab_13=Cancel
JavaJRETab_0={0} not compatible with {1} .class file compatibility: {2}
JavaJRETab_5=&Project execution environment ''{0}'' ({1})
JavaJRETab_AttributeLabel_JREContainerPath=JRE container path
JavaJRETab_AttributeLabel_VMAttributes=VM attributes
JavaMainTab_Choose_a_main__type_to_launch__12=Select &type (? = any character, * = any String, TZ = TimeZone):
JavaMainTab_Choose_Main_Type_11=Select Main Type
JavaApplicationLaunchShortcut_0=Select Java Application
JavaApplicationLaunchShortcut_1=Editor does not contain a main type
JavaApplicationLaunchShortcut_2=Selection does not contain a main type
JavaLaunchShortcut_0=Error
JavaLaunchShortcut_1=Launch Error
JavaLaunchShortcut_2=&Select existing configuration:
JavaLaunchShortcut_3=Error

JavaAppletLaunchShortcut_0=Select Java Applet
JavaAppletLaunchShortcut_1=Editor does not contain an applet
JavaAppletLaunchShortcut_2=Selection does not contain an applet
JavaMainTab__Main_19=Main
JavaMainTab_E_xt__jars_6=Includ&e system libraries when searching for a main class
JavaMainTab_Main_cla_ss__4=&Main class:
JavaMainTab_Main_type_not_specified_16=Main type not specified
JavaMainTab_St_op_in_main_1=St&op in main
JavaMainTab_19=Illegal project name: {0}
JavaMainTab_20=Project {0} does not exist
JavaMainTab_21=Project {0} is closed
JavaMainTab_22=Include in&herited mains when searching for a main class
JavaMainTab_missing_project=Project not specified

JavaLauncherTab_AttributeLabel_ProjectName=Project name
SharedJavaMainTab_AttributeLabel_MainTypeName=Main type name
JavaMainTab_AttributeLabel_StopInMain=Stop in main
JavaMainTab_AttributeLabel_IncludeExternalJars= Include external JARs
JavaMainTab_AttributeLabel_InheritedMain=Inherited main

JavaUISourceLocator_askagain_message=Do &not ask again
JavaUISourceLocator_selectprojects_message=The source of the type ''{0}'' could not be shown as the type was not found.
JavaUISourceLocator_selectprojects_title=Debugger Source Lookup

jdkLauncher_error_timeout=Timeout while waiting for VM to connect. Retry?

MainMethodSearchEngine_1=Searching for main types...
MainMethodSearchEngine_2=Searching for main types...
MainMethodLabelProvider_0=(default package)

SourceLookupBlock_Use_defau_lt_source_lookup_path_1=Use default source loo&kup path
SourceLookupBlock_Unable_to_save_source_lookup_path_1=Unable to save source lookup path

VMConnectTimeoutStatusHandler_Java_Application_1=Java Application

JavaClasspathTab_Cla_ss_path_3=Classpath
JavaClasspathTab_0=C&lasspath:
JavaClasspathTab_1=Referenced project [{0}] is not accessible.
JavaClasspathTab_Unable_to_save_classpath_1=Unable to save classpath
JavaClasspathTab_Invalid_runtime_classpath_1=Archive does not exist: {0}
JavaClasspathTab_Exclude_Test_Code=Exclude &test code

JavaClasspathTab_AttributeLabel_DefaultClasspath=Default classpath
JavaClasspathTab_AttributeLabel_Classpath=Classpath

JavaDependenciesTab_0=De&pendencies
JavaDependenciesTab_Dependencies_3=Dependencies
JavaDependenciesTab_add_modules_label=Add mod&ules:

JavaSourceLookupTab_Source_1=Source

SourceLookupBlock_Source_1=Source
SourceLookupBlock__Source_Lookup_Path__1=S&ource Lookup Path:
SourceLookupBlock__Search_for_duplicate_source_files_on_path_1=Searc&h for duplicate source files on path

RuntimeClasspathAdvancedDialog_Advanced_Options_1=Advanced Options
RuntimeClasspathAdvancedDialog_Unable_to_create_new_entry__3=Unable to create new entry
RuntimeClasspathAdvancedDialog_Select_an_advanced_option__1=Select an advanced option:
RuntimeClasspathEntryLabelProvider_Invalid_path=Invalid path: {0}

appletlauncher_argumenttab_widthlabel_text=W&idth:
appletlauncher_argumenttab_heightlabel_text=&Height:
appletlauncher_argumenttab_namelabel_text=Na&me:
appletlauncher_argumenttab_parameterslabel_text=&Parameters:
appletlauncher_argumenttab_parameters_button_add_text=&Add...
appletlauncher_argumenttab_parameters_button_edit_text=&Edit...
appletlauncher_argumenttab_parameters_button_remove_text=Rem&ove
appletlauncher_argumenttab_width_error_notaninteger=Width is not a valid integer
appletlauncher_argumenttab_height_error_notaninteger=Height is not a valid integer
appletlauncher_argumenttab_parameters_dialog_add_title=Add Parameter Variable
appletlauncher_argumenttab_parameters_dialog_add_name_text=&Name:
appletlauncher_argumenttab_parameters_dialog_add_value_text=&Value:
appletlauncher_argumenttab_parameters_dialog_edit_title=Edit Parameter Variable
appletlauncher_argumenttab_parameters_dialog_edit_name_text=&Name
appletlauncher_argumenttab_parameters_dialog_edit_value_text=&Value
appletlauncher_argumenttab_name_defaultvalue=
appletlauncher_argumenttab_parameterscolumn_name_text=Name
appletlauncher_argumenttab_parameterscolumn_value_text=Value
appletlauncher_argumenttab_name=Parameters

appletlauncher_maintab_mainclasslabel_name=&Applet:
appletlauncher_maintab_selection_applet_dialog_title=Choose Applet
appletlauncher_maintab_project_error_doesnotexist=Project does not exist.
appletlauncher_maintab_type_error_doesnotexist=Applet type not specified.
appletlauncher_maintab_name=Main

appletlauncher_utils_error_main_type_not_specified=Applet class not specified
appletlauncher_utils_error_main_type_does_not_exist=Applet class {0} does not exist in project {1}
appletlauncher_search_task_inprogress=Searching applets...

AppletParametersTab__optional_applet_instance_name__1=(optional applet instance name)
AppletMainTab_1=App&let viewer:
AppletMainTab_2=&Use default Applet viewer class
AppletMainTab_3=Applet viewer class must be specified

JREContainerResolution_Select_a_system_library_to_use_when_building__0__2=Select a system library to use when building {0}
JREContainerResolution_Unable_to_update_classpath_1=Unable to update classpath

DefineSystemLibraryQuickFix_Create_a_system_library_definition_2=Create a system library definition

SelectDefaultSystemLibraryQuickFix_Select_Default_System_Library_1=Select Default System Library
SelectDefaultSystemLibraryQuickFix__Select_the_system_library_to_use_by_default_for_building_and_running_Java_projects__2=&Select the system library to use by default for building and running Java projects.
SelectDefaultSystemLibraryQuickFix_Unable_to_update_the_default_system_library__4=Unable to update default system library
SelectDefaultSystemLibraryQuickFix_Select_default_system_library_5=Select default system library
AppletSelectionDialog_Searching____1=Searching...

VMArgumentsBlock_4=Variable&s...
JavaArgumentsTab_5=Var&iables...
JreResolutionGenerator_open_ee_prefs=Open the Execution Environments preference page
JreResolutionGenerator_opens_ee_prefs=Opens the Execution Environments preference page
JreResolutionGenerator_open_cc_props=Open the Compiler Compliance property page
JreResolutionGenerator_opens_cc_props=Opens the Compiler Compliance property page
AbstractJavaMainTab_0=&Project:
AbstractJavaMainTab_1=&Browse...
AbstractJavaMainTab_2=&Search...
AbstractJavaMainTab_4=Project Selection
AbstractJavaMainTab_3=Select a project to constrain your search.
ClasspathTooLongStatusHandler_0=Java Application
ClasspathTooLongStatusHandler_1=Cannot start the Java Virtual Machine because classpath is too long. Do you want to enable classpath-only jar for this launch configuration ?
ExecutionEnvironmentSelector_0=Select Execution Environment
ExecutionEnvironmentSelector_1=Choose an environment (? = any character, * = any string):
ProjectClasspathArugumentSelector_0=Select Java Project
ProjectClasspathArugumentSelector_1=Choose a project (? = any character, * = any string):
