There seems to be a mismatch between java command line version output and the contents of the release file.  There is a strong expectation that java -fullversion reports the same string as JAVA_FULL_VERSION.  Likewise with java -version and JAVA_VERSION.  If there is a good reason for these to be different, please find better names for them.
$ grep VERSION ~/jdk/jdk9/release; echo ---; ~/jdk/jdk9/bin/java -version; echo ---; ~/jdk/jdk9/bin/java -fullversion;
JAVA_FULL_VERSION="9-ea"
JAVA_VERSION="9"
---
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+167)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+167, mixed mode)
---
java full version "9-ea+167"
$ grep VERSION ~/jdk/jdk9/release; echo ---; ~/jdk/jdk9/bin/java -version; echo ---; ~/jdk/jdk9/bin/java -fullversion;
JAVA_FULL_VERSION="9-ea"
JAVA_VERSION="9"
---
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+167)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+167, mixed mode)
---
java full version "9-ea+167"
- relates to
- 
                    JDK-8178016 Revisit OS and architecture names in system props, release file, bundles -           
- Open
 
-         
 P2
  P2