Skip to content

Commit 5aa6956

Browse files
Merge pull request #162 from lasselindqvist/issue-161
Issue #161: ITs fail on Java 11
2 parents e12cb8c + 529e16e commit 5aa6956

File tree

3 files changed

+36
-11
lines changed

3 files changed

+36
-11
lines changed

src/it/simple/pom.xml

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,10 @@
1414
<plugin>
1515
<groupId>org.apache.maven.plugins</groupId>
1616
<artifactId>maven-compiler-plugin</artifactId>
17-
<version>3.1</version>
18-
<configuration>
19-
<source>1.6</source>
20-
<target>1.6</target>
21-
<compilerArgs>
22-
<arg>-Xlint</arg>
23-
</compilerArgs>
24-
</configuration>
17+
<version>3.8.0</version>
18+
<configuration>
19+
<release>11</release>
20+
</configuration>
2521
</plugin>
2622
<plugin>
2723
<groupId>com.github.wvengen</groupId>
@@ -39,6 +35,14 @@
3935
<configuration>
4036
<attach>true</attach>
4137
</configuration>
38+
<dependencies>
39+
<dependency>
40+
<groupId>org.apache.logging.log4j</groupId>
41+
<artifactId>log4j-core</artifactId>
42+
<version>2.14.1</version>
43+
<scope>runtime</scope>
44+
</dependency>
45+
</dependencies>
4246
</plugin>
4347
</plugins>
4448
</build>

src/it/simple/proguard.conf

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
-libraryjars <java.home>/lib/rt.jar
2-
31
-dontnote
42
-dontwarn
53

src/main/java/com/github/wvengen/maven/proguard/ProGuardMojo.java

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -866,6 +866,27 @@ private void attachTextFile(File theFile, String mainClassifier, String suffix)
866866

867867
}
868868
}
869+
870+
private Set<File> getAllPluginArtifactDependencies(ProGuardMojo mojo) throws MojoExecutionException {
871+
Set<File> files = new HashSet<>(getProguardJars(mojo));
872+
for (Artifact artifact : mojo.pluginArtifacts) {
873+
files.add(artifact.getFile().getAbsoluteFile());
874+
files.addAll(getChildArtifacts(artifact));
875+
}
876+
877+
return files;
878+
}
879+
880+
private Set<File> getChildArtifacts(Artifact artifact) {
881+
Set<File> files = new HashSet<>();
882+
for (Object child : artifact.getDependencyTrail()) {
883+
if (child instanceof Artifact) {
884+
files.add(((Artifact) child).getFile().getAbsoluteFile());
885+
files.addAll(getChildArtifacts((Artifact) child));
886+
}
887+
}
888+
return files;
889+
}
869890

870891
private List<File> getProguardJars(ProGuardMojo mojo) throws MojoExecutionException {
871892

@@ -984,8 +1005,10 @@ private void proguardMain(Collection<File> proguardJars, List<String> argsList,
9841005
java.setTaskName("proguard");
9851006

9861007
mojo.getLog().info("proguard jar: " + proguardJars);
1008+
1009+
Set<File> allDependencyFiles = getAllPluginArtifactDependencies(mojo);
9871010

988-
for (File p : proguardJars)
1011+
for (File p : allDependencyFiles)
9891012
java.createClasspath().createPathElement().setLocation(p);
9901013
// java.createClasspath().setPath(System.getProperty("java.class.path"));
9911014
java.setClassname(mojo.proguardMainClass);

0 commit comments

Comments
 (0)