Skip to content

Commit

Permalink
Add support for Java 9 multi release jars wvengen#61
Browse files Browse the repository at this point in the history
- A property for library jar exclusions (libraryJarExclusion)
  • Loading branch information
liamsharp committed May 29, 2018
1 parent f0ec275 commit c29d609
Showing 1 changed file with 23 additions and 19 deletions.
42 changes: 23 additions & 19 deletions src/main/java/com/github/wvengen/maven/proguard/ProGuardMojo.java
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,13 @@ public class ProGuardMojo extends AbstractMojo {
* @parameter default-value="false"
*/
private boolean putLibraryJarsInTempDir;


/**
* Sets an exclude for all library jars, eg: (!META-INF/versions/**)
*
* @parameter default-value=""
*/
private String libraryJarExclusion;

/**
* Specifies that project compile dependencies should be added as injar.
Expand Down Expand Up @@ -475,12 +481,7 @@ public void execute() throws MojoExecutionException, MojoFailureException {
// This may not be CompileArtifacts, maven 2.0.6 bug
File file = getClasspathElement(getDependency(inc, mavenProject), mavenProject);
inPath.add(file.toString());
if(putLibraryJarsInTempDir){
libraryJars.add(file);
} else {
args.add("-libraryjars");
args.add(fileToString(file));
}
addLibraryJar(args, libraryJars, file);
}
}
}
Expand Down Expand Up @@ -530,12 +531,7 @@ public void execute() throws MojoExecutionException, MojoFailureException {
args.add(fileToString(file));
} else {
log.debug("--- ADD libraryjars:" + artifact.getArtifactId());
if (putLibraryJarsInTempDir) {
libraryJars.add(file);
} else {
args.add("-libraryjars");
args.add(fileToString(file));
}
addLibraryJar(args, libraryJars, file);
}
}
}
Expand Down Expand Up @@ -565,12 +561,7 @@ public void execute() throws MojoExecutionException, MojoFailureException {

if (libs != null) {
for (String lib : libs) {
if (putLibraryJarsInTempDir) {
libraryJars.add(new File(lib));
} else {
args.add("-libraryjars");
args.add(fileNameToString(lib));
}
addLibraryJar(args, libraryJars, new File(lib));
}
}

Expand Down Expand Up @@ -691,6 +682,19 @@ public void execute() throws MojoExecutionException, MojoFailureException {
}
}

private void addLibraryJar(ArrayList<String> args, ArrayList<File> libraryJars, File file)
{
if (putLibraryJarsInTempDir) {
libraryJars.add(file);
} else {
args.add("-libraryjars");
args.add(fileToString(file));
if (libraryJarExclusion != null) {
args.add(libraryJarExclusion);
}
}
}

private void attachTextFile(File theFile, String mainClassifier, String suffix) {
final String classifier = (null == mainClassifier ? "" : mainClassifier+"-") + suffix;
log.info("Attempting to attach "+suffix+" artifact");
Expand Down

0 comments on commit c29d609

Please sign in to comment.