Java 7 in Maven Project

If you have both jdk6 and jdk7 installed and you would want to interchange between the two compilers in a maven project, this can be easily done by the maven-compiler-plugin and its source and target parameters.

Assuming that we have created a JAVA_7_HOME environment variable we can point the maven-compiler-plugin to the jdk7 compiler as follows:

  		<plugin>
  			<groupId>org.apache.maven.plugins</groupId>
  			<artifactId>maven-compiler-plugin</artifactId>
  			<version>2.3.2</version>
  			<configuration>
  				<source>1.7</source>
  				<target>1.7</target>
  				<encoding>${project.build.sourceEncoding}</encoding>			
  				<executable>${env.JAVA_7_HOME}</executable>
  			</configuration>
  		</plugin>

I have also created a 2-module Maven project one for each jdk that you can find in this Github repository.

Advertisements

Installing Java 7 on Mac OS X Lion

Installing Java on Mac OS X used to be a breeze. Once upon a time it was part of the regular Apple update but at some point in midst Java 6 it stopped being supported and now if you want Java 7 you would need to build the jdk first to get the precious binaries.

If you are after only the binaries I found this place where they are made available. Completing the installation is a matter of drag-and-drop and finally jdk 7 will reside in /Library/Java/JavaVirtualMachines/1.7.0.jdk/.

Don’t forget to create/update environment variables or point to that location from your Eclipse, IntelliJ or other IDE. As far as I have checked, Eclipse Indigo 3.7.1 is supporting Java 7 on the fly syntax checker as part of its updated JDT. Older versions of Indigo wouldn’t recognise ie. project coin changes.