예제 #1
0
  /**
   * Starts the underlying Chameleon instance.
   *
   * @param root the base directory of the Chameleon.
   * @throws java.io.IOException if the chameleon configuration cannot be read.
   * @throws org.osgi.framework.BundleException if the chameleon cannot be started.
   */
  private void start(File root) throws BundleException, IOException {
    ChameleonConfiguration configuration = new ChameleonConfiguration(root);
    StringBuilder packages = new StringBuilder();
    Packages.junit(packages);
    Packages.wisdomtest(packages);
    Packages.javaxinject(packages);
    Packages.assertj(packages);
    Packages.osgihelpers(packages);
    configuration.put("org.osgi.framework.system.packages.extra", packages.toString());

    chameleon = new Chameleon(configuration);
    fixLoggingSystem(root);
    chameleon.start();
    Stability.waitForStability(chameleon.context());
  }