[Fb-contrib-commit] SF.net SVN: fb-contrib: [822] trunk/fb-contrib/src/com/mebigfatguy/ fbcontrib/
Brought to you by:
dbrosius
From: <dbr...@us...> - 2007-02-02 05:26:21
|
Revision: 822 http://svn.sourceforge.net/fb-contrib/?rev=822&view=rev Author: dbrosius Date: 2007-02-01 21:26:19 -0800 (Thu, 01 Feb 2007) Log Message: ----------- allow for specifying the old jdk home thru system property Modified Paths: -------------- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousJDKVersionUse.java Modified: trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousJDKVersionUse.java =================================================================== --- trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousJDKVersionUse.java 2007-02-02 05:20:10 UTC (rev 821) +++ trunk/fb-contrib/src/com/mebigfatguy/fbcontrib/detect/SuspiciousJDKVersionUse.java 2007-02-02 05:26:19 UTC (rev 822) @@ -58,6 +58,7 @@ verRegEx.put(Integer14.valueOf(50), "(jdk|j2?re)1.6"); } private static final Pattern jarPattern = Pattern.compile("jar:file:/*([^!]*)"); + private static final String SJVU_JDKHOME = "fb-contrib.sjvu.jdkhome"; private Map<String, File> versionPaths; private Map<Integer, Map<String, Set<String>>> validMethodsByVersion; @@ -81,6 +82,9 @@ cls = classContext.getJavaClass(); clsMajorVersion = Integer14.valueOf(cls.getMajor()); File rtJar = getRTJarFile(cls); + if (rtJar == null) + rtJar = getRTJarFromProperty(); + if (rtJar != null) { jdkZip = new ZipFile(rtJar); super.visitClassContext(classContext); @@ -255,4 +259,19 @@ return null; } + + private File getRTJarFromProperty() { + String jdkHome = System.getProperty(SJVU_JDKHOME); + if (jdkHome == null) + return null; + + File rtJar = new File(jdkHome, "lib/rt.jar"); + if (rtJar.exists()) + return rtJar; + rtJar = new File(jdkHome, "jre/lib/rt.jar"); + if (rtJar.exists()) + return rtJar; + + return null; + } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |