# Licensed to the Apache Software Foundation (ASF) under the terms of ASLv2 (http://www.apache.org/licenses/LICENSE-2.0).
-nobundles: true
-dependson: \
	org.apache.ace.agent,\
	org.apache.ace.agent.controller.itest,\
	org.apache.ace.agent.itest,\
	org.apache.ace.agent.launcher,\
	org.apache.ace.agent.update.itest,\
	org.apache.ace.authentication,\
	org.apache.ace.authentication.itest,\
	org.apache.ace.bnd,\
	org.apache.ace.builder,\
	org.apache.ace.client.automation,\
	org.apache.ace.client.repository,\
	org.apache.ace.client.repository.itest,\
	org.apache.ace.client.rest,\
	org.apache.ace.client.rest.itest,\
	org.apache.ace.client.workspace,\
	org.apache.ace.configurator,\
	org.apache.ace.connectionfactory,\
	org.apache.ace.consolelogger,\
	org.apache.ace.deployment,\
	org.apache.ace.deployment.itest,\
	org.apache.ace.discovery,\
	org.apache.ace.feedback.common,\
	org.apache.ace.gogo,\
	org.apache.ace.gogo.servlet,\
	org.apache.ace.http,\
	org.apache.ace.identification,\
	org.apache.ace.log,\
	org.apache.ace.log.itest,\
	org.apache.ace.log.server.ui,\
	org.apache.ace.obr,\
	org.apache.ace.range.api,\
	org.apache.ace.repository,\
	org.apache.ace.repository.itest,\
	org.apache.ace.resourceprocessor.useradmin,\
	org.apache.ace.scheduler,\
	org.apache.ace.tageditor,\
	org.apache.ace.target.mgmt.ui,\
	org.apache.ace.test,\
	org.apache.ace.useradmin,\
	org.apache.ace.useradmin.itest,\
	org.apache.ace.useradmin.ui,\
	org.apache.ace.useradmin.ui.itest,\
	org.apache.ace.verifier,\
	org.apache.ace.webui.vaadin
