boolean debugLog, String javaMaxHeapSize) throws ProcessException { JackProcessBuilder builder = new JackProcessBuilder(); builder.setDebugLog(debugLog) .setVerbose(mVerboseExec) .setJavaMaxHeapSize(javaMaxHeapSize) .setClasspath(classpath) .setDexOutputFolder(dexOutputFolder) .setJackOutputFile(jackOutputFile) .addImportFiles(packagedLibraries) .setEcjOptionFile(ecjOptionFile); builder.addProguardFiles(proguardFiles).setMappingFile(mappingFile); builder.setMultiDex(true).setMinSdkVersion(minSdkVersion); builder.setJarJarRuleFiles(jarJarRuleFiles); builder.build(mTargetInfo.getBuildTools()), mProcessOutputHandler) .rethrowFailure().assertNormalExitValue();
/** * It performs the same operation like {@link #convertUsingJackApis(JackProcessOptions, * ProcessOutput)} but it does that in a separate process. */ private void convertUsingJackCli( @NonNull JackProcessOptions options, @NonNull ProcessOutputHandler processOutputHandler, @NonNull JavaProcessExecutor javaProcessExecutor) throws ProcessException { JackProcessBuilder builder = new JackProcessBuilder(options, logger); javaProcessExecutor .execute(builder.build(buildToolInfo), processOutputHandler) .rethrowFailure() .assertNormalExitValue(); }
if (options.getEcjOptionFile() != null) { try { createEcjOptionFile(); } catch (IOException e) { throw new ProcessException( api04Specific(buildToolInfo, builder);