[Building Sakai] Requiring JDK 7 for building/running Sakai 11?

Cris J Holdorph holdorph at unicon.net
Thu Feb 20 09:27:59 PST 2014


I "fixed" (changed code locally) in genericdao to be able to compile 
with JDK 7.  It's not the only change.  There are also many unit tests 
that are broken too, because they are dependent on the 'order' those 
tests run and the reflection API implementation changed, which causes 
the tests to run in a different order, breaking the tests.  In the short 
term, I just commented out the tests that were dependent on order (IMO 
any "unit" test dependent on another "unit" test, was not a true unit 
test anyway).

My only point is, I've been running the project I'm on with JDK 7 for 
both compilation and runtime for the last 6 months or so.

---- Cris J H

On 02/20/2014 10:21 AM, Matthew Jones wrote:
> As a related issue, I know of one thing that would make our code
> non-backward compatible with 1.6, but that's in genericdao and not in
> the core. You can't compile that right now in Java 7 because there was a
> change to the interface in java.sql which is not backward compatible.
>
> The Mac issue is slightly tougher because on 10.6 it says it's
> preinstalled with Java 6 and 10.7+ you can get Java 7 (not pre-installed)
> http://www.java.com/en/download/faq/java_mac.xml#havejava
>
> You are not able to install Java 7 on anything earlier than 10.7, but at
> this point 10.7 is itself almost 3 years old, so I'm not too sure how
> long that would still be an sticking point.
>
> And that Java 7 bug is something that you'd have to put in a flag to
> work around, but it is fixed on 8. We could always wait until 2016 and
> just recommend upgrading straight to 8. Then OSX 10.6 will be 5 years
> old and certainly old enough to not worry about that.
>
> I think my recommendation for 11 (assuming 2015) would be not to require
> it, but I'd be in favor of it for 12 (2016).
>
> (Issue in Java 7 with java.sql)
>
> *Area:* API: JDBC
> *Synopsis:* New JDBC Methods, Including new Methods in Interfaces
> *Description:* For the Java SE 7 release, there are new methods to
> support JDBC 4.1. This includes methods added to the
> |java.sql.Connection|, |java.sql.Driver|,|javax.sql.CommonDatasource|,
> and |java.sql.Statement| interfaces. Because all methods of an interface
> must be implemented, previous code that uses these interfaces will not
> compile on Java SE 7 unless you add the new methods. See the JDBC
> documentation for more information.
> *Nature of Incompatibility:* source
> *RFE:*6589685 <http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6589685>
>
>
> On Thu, Feb 20, 2014 at 12:13 PM, Aaron Zeckoski <azeckoski at unicon.net
> <mailto:azeckoski at unicon.net>> wrote:
>
>     Current OSX still bundles JDK 6 by default (release from 2013-10-15).
>     Lots of servers out there are still running Java 6
>
>     We could require everyone who uses a Mac to figure out how to install
>     a newer version in order to use Sakai but I think that is likely to
>     just make people not bother and use Moodle instead. Current PHP is
>     5.5.8 (9 Jan 2014) but newest moodle 2.6.1 (13th Jan 2014) only
>     requires PHP 5.3.3 (22 July 2010).
>
>     Bear in mind this bug with JDK 7:
>     https://jira.sakaiproject.org/browse/KNL-1083
>
>     I don't see the benefit and I do see lots of negatives.
>     -AZ
>
>     On Thu, Feb 20, 2014 at 11:43 AM, Matthew Buckett
>     <matthew.buckett at it.ox.ac.uk <mailto:matthew.buckett at it.ox.ac.uk>>
>     wrote:
>      > I know at the moment JDK 6 is the minimum required for Sakai,
>     does bumping
>      > it up to JDK 7 (which was released July 2011) make sense for
>     trunk (Sakai
>      > 11)?
>      >
>      > JDK 6 from Oracle stopped getting public updated in Feb 2013.
>      > The less JDKs we support the less possibility there is for cross
>     JDK issues.
>      > JDK 7 has some nice new language features:
>      >
>     http://www.oracle.com/technetwork/java/javase/jdk7-relnotes-418459.html
>      >
>      > JDK 7 is available in old distributions such as:
>      > - Ubuntu 12.04 (released in 2012).
>      > - Redhat Enterprise Linux 6 (release 2011).
>      >
>      > Are there places that can't run on JDK 7?
>      >
>      > --
>      >   Matthew Buckett, VLE Developer, IT Services, University of Oxford
>      >
>      > _______________________________________________
>      > sakai-dev mailing list
>      > sakai-dev at collab.sakaiproject.org
>     <mailto:sakai-dev at collab.sakaiproject.org>
>      > http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>      >
>      > TO UNSUBSCRIBE: send email to
>     sakai-dev-unsubscribe at collab.sakaiproject.org
>     <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org>
>      > with a subject of "unsubscribe"
>
>
>
>     --
>     Aaron Zeckoski - Software Architect - http://tinyurl.com/azprofile
>     _______________________________________________
>     sakai-dev mailing list
>     sakai-dev at collab.sakaiproject.org
>     <mailto:sakai-dev at collab.sakaiproject.org>
>     http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
>     TO UNSUBSCRIBE: send email to
>     sakai-dev-unsubscribe at collab.sakaiproject.org
>     <mailto:sakai-dev-unsubscribe at collab.sakaiproject.org> with a
>     subject of "unsubscribe"
>
>
>
>
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"
>


More information about the sakai-dev mailing list