/** * Adds a jar input folder for this transform input. All the jars found will be added to the class * path. * * @param folder the folder of the jars input. * @return this instance of the builder. */ TransformInputBuilder addJarInputFolder(File folder) { File[] listFiles = folder.listFiles(); if (listFiles != null) { for (File file : listFiles) { if (file.isDirectory()) { addJarInputFolder(file); } else { if (!file.getAbsolutePath().endsWith(DOT_JAR)) { continue; } addJarInput(file); } } } return this; }
private void runTransform(Transform transform, TransformOutputProvider outputProvider) throws Exception { // Cleaning output directory. FileUtil.deleteDirectory(outputJarsDir); outputJarsDir.mkdirs(); // Preparing Transform invocation. TransformInput input = new TransformInputBuilder().addJarInputFolder(inputJarsDir).build(); TransformInput referencedInput = new TransformInputBuilder().addJarInput(androidClassPath).build(); TransformInvocation invocation = new TransformInvocationBuilder() .addInput(input) .addReferencedInput(referencedInput) .setOutputProvider(outputProvider) .build(); // Running the transform invocation. transform.transform(invocation); } }