@Override public void doWithLibraries(LibraryCallback callback) throws IOException { Set<GradleLibrary> custom = getLibraries(this.customConfigurationName, LibraryScope.CUSTOM); if (custom != null) { libraries(custom, callback); } else { Set<GradleLibrary> runtime = getLibraries("runtime", LibraryScope.RUNTIME); Set<GradleLibrary> provided = getLibraries(this.providedConfigurationName, LibraryScope.PROVIDED); if (provided != null) { runtime = minus(runtime, provided); } libraries(runtime, callback); libraries(provided, callback); } }
@Override public void doWithLibraries(LibraryCallback callback) throws IOException { Set<String> duplicates = getDuplicates(this.artifacts); for (Artifact artifact : this.artifacts) { LibraryScope scope = SCOPES.get(artifact.getScope()); if (scope != null && artifact.getFile() != null) { String name = artifact.getFile().getName(); if (duplicates.contains(name)) { this.log.debug("Duplicate found: " + name); name = artifact.getGroupId() + "-" + name; this.log.debug("Renamed to: " + name); } callback.library(new Library(name, artifact.getFile(), scope, isUnpackRequired(artifact))); } } }
protected void bootRepackage(final IPackageFragmentRoot[] roots, File packagedFile) throws CoreException { Repackager bootRepackager = new Repackager(packagedFile); try { bootRepackager.repackage(new Libraries() { public void doWithLibraries(LibraryCallback callBack) throws IOException { for (IPackageFragmentRoot root : roots) { if (root.isArchive()) { File rootFile = new File(root.getPath().toOSString()); if (rootFile.exists()) { callBack.library(new Library(rootFile, LibraryScope.COMPILE)); } } } } }); } catch (IOException e) { errorHandler.handleApplicationDeploymentFailure( NLS.bind(Messages.JavaCloudFoundryArchiver_ERROR_REPACKAGE_SPRING, e.getMessage())); } }
@Override public void doWithLibraries(LibraryCallback callback) throws IOException { Set<GradleLibrary> custom = getLibraries(this.customConfigurationName, LibraryScope.CUSTOM); if (custom != null) { libraries(custom, callback); } else { Set<GradleLibrary> compile = getLibraries("compile", LibraryScope.COMPILE); Set<GradleLibrary> runtime = getLibraries("runtime", LibraryScope.RUNTIME); runtime = minus(runtime, compile); Set<GradleLibrary> provided = getLibraries(this.providedConfigurationName, LibraryScope.PROVIDED); if (provided != null) { compile = minus(compile, provided); runtime = minus(runtime, provided); } libraries(compile, callback); libraries(runtime, callback); libraries(provided, callback); } }
private void writeJar(File file, Class<?>[] compiledClasses, List<MatchedResource> classpathEntries, List<URL> dependencies) throws FileNotFoundException, IOException, URISyntaxException { final List<Library> libraries; JarWriter writer = new JarWriter(file); try { addManifest(writer, compiledClasses); addCliClasses(writer); for (Class<?> compiledClass : compiledClasses) { addClass(writer, compiledClass); } libraries = addClasspathEntries(writer, classpathEntries); } finally { writer.close(); } libraries.addAll(createLibraries(dependencies)); Repackager repackager = new Repackager(file); repackager.setMainClass(PackagedSpringApplicationLauncher.class.getName()); repackager.repackage(new Libraries() { @Override public void doWithLibraries(LibraryCallback callback) throws IOException { for (Library library : libraries) { callback.library(library); } } }); }