public void launch() { try { testSuiteDir = agent.getTestSuiteDir(); ensureExistingDirectory(testSuiteDir); WorkerType type = workerJvmSettings.getWorkerType(); int workerIndex = workerJvmSettings.getWorkerIndex(); LOGGER.info(format("Starting a Java Virtual Machine for %s Worker #%d", type, workerIndex)); String hzConfigFileName = (type == WorkerType.MEMBER) ? "hazelcast" : "client-hazelcast"; hzConfigFile = createTmpXmlFile(hzConfigFileName, workerJvmSettings.getHazelcastConfig()); log4jFile = createTmpXmlFile("worker-log4j", workerJvmSettings.getLog4jConfig()); LOGGER.info("Spawning Worker JVM using settings: " + workerJvmSettings); WorkerJvm worker = startWorkerJvm(); LOGGER.info(format("Finished starting a JVM for %s Worker #%d", type, workerIndex)); waitForWorkersStartup(worker, workerJvmSettings.getWorkerStartupTimeout()); } catch (Exception e) { LOGGER.error("Failed to start Worker", e); agent.getCoordinatorLogger().fatal("Failed to start Worker: " + e.getMessage()); throw new SpawnWorkerFailedException("Failed to start Worker", e); } }
private String getClasspath() { String hzVersionDirectory = directoryForVersionSpec(workerJvmSettings.getHazelcastVersionSpec()); return CLASSPATH + CLASSPATH_SEPARATOR + getSimulatorHome() + "/hz-lib/" + hzVersionDirectory + "/*" + CLASSPATH_SEPARATOR + getSimulatorHome() + "/user-lib/*" + CLASSPATH_SEPARATOR + new File(agent.getTestSuiteDir(), "lib/*").getAbsolutePath(); }