From c0357c5234fedb958bc2dd93a8397424bdcea7cf Mon Sep 17 00:00:00 2001 From: Tomaz Cerar Date: Thu, 10 Dec 2015 16:07:59 +0100 Subject: [PATCH] Make it work also on JDK9 with new versioning scheme --- .../plexus/archiver/zip/AbstractZipArchiver.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/codehaus/plexus/archiver/zip/AbstractZipArchiver.java b/src/main/java/org/codehaus/plexus/archiver/zip/AbstractZipArchiver.java index 3230b8774..9601c869b 100755 --- a/src/main/java/org/codehaus/plexus/archiver/zip/AbstractZipArchiver.java +++ b/src/main/java/org/codehaus/plexus/archiver/zip/AbstractZipArchiver.java @@ -34,7 +34,6 @@ import org.codehaus.plexus.util.FileUtils; import org.codehaus.plexus.util.IOUtil; -import javax.annotation.WillClose; import java.io.ByteArrayInputStream; import java.io.File; import java.io.FileOutputStream; @@ -119,8 +118,7 @@ public abstract class AbstractZipArchiver * Java versions from 8 and up round timestamp up. * s */ - private static final boolean isJava7OrLower = - Integer.parseInt( System.getProperty( "java.version" ).split( "\\." )[1] ) <= 7; + private static final boolean isJava7OrLower = getJavaVersion()<= 7; // Renamed version of original file, if it exists private File renamedFile = null; @@ -133,6 +131,16 @@ public abstract class AbstractZipArchiver protected ZipArchiveOutputStream zipArchiveOutputStream; + private static int getJavaVersion(){ + String javaSpecVersion = System.getProperty( "java.specification.version" ); + if (javaSpecVersion.contains(".")) {//before jdk 9 + return Integer.parseInt(javaSpecVersion.split("\\.")[1]); + }else { + return Integer.parseInt(javaSpecVersion); + } + } + + public String getComment() { return comment;