Yeah, the LocatorLauncher is intended to be an API for starting a Locator in your local JVM or to use as the main when starting a new JVM.
You don't need to have a gemfire.properties file. You can programmatically define all of your config options at runtime and either feed them in via the LocatorLauncher.Builder. LocatorLauncher launcher = new Builder() .setForce(true) .setMemberName(getUniqueName()) .setPort(this.locatorPort) .set(DistributionConfig.LOG_LEVEL_NAME, "config") .set(DistributionConfig.MCAST_PORT_NAME, "0") .set(DistributionConfig.LOCATORS_NAME, "hostname:port") .build() .start(); *replace "hostname:port" with a real hostname and port for any other locators If you don't want to use the internal (non-user-API) DistributionConfig then just specify strings for the property names: .set("log-level", "config") .set("mcast-port", "0") .set("locators", "hostname:port") Another way to set these at runtime is to set System properties with the "gemfire." prefix: System.setProperty("gemfire.log-level", "config"); System.setProperty("gemfire.mcast-port", "0"); System.setProperty("gemfire.locators", "hostname:port"); LocatorLauncher.start() is invoking InternalLocator.startLocator(...) which is the implementation of a locator and it's passing in a Properties instance with all the key:value gemfire.properties you set. Down inside InternalLocator, it adds the local locator into the "locators" before connecting to the DistributedSystem, so don't add the local locator to your "locators" value within this JVM. Just list out hostname:port values for other locators. If you did use a gemfire.properties file that's the same place in the code that would trigger finding and loading the properties file. -Kirk (@kirk_lund) On Tue, Jun 30, 2015 at 7:07 PM, Vinicius Carvalho < viniciusccarva...@gmail.com> wrote: > Hi there, is it possible to use the LocatorLauncher class to bootstrap my > locators within my code, and set the hosts of other locators dynamically? > > I don't have multicast enabled (AWS) and I need to specify the other > locators by using an EC2 discovery. > > I could not find a way with the class to specify other locators in the > system. Only via gemfire.properties. > > Is there a way to do such thing? > > Thank you >