###############################################################################
#   Copyright (c) 2010 Eteration A.S. 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:
#      Naci Dai and Murat Yener, Eteration A.S. - Initial API and implementation
###############################################################################

# --------------- General UI ---------------

errorInstallDirTrailingSlash = Installation folder must not end with a slash
errorJRE= Selected JRE is not valid;
warningCantReadConfig=Cannot locate the correct conf folder.  Invalid Installation folder
warningCantReadBundle=Cannot locate the correct bundle folder.  Invalid Installation folder
errorNotBundle=Must be an osgi bundle
errorOSGiBundlesOnly=Must be an osgi bundle
errorNoRuntime=There is no runtime