Problem
When using a matrix job to define a CI job running on both java 9 and java 8, the workspace file path will be added with "jdk name" (e.g. "JDK 1.8 latest" and "JDK 9 latest"). This will cause file paths contain spaces, and fail the builds.
for example, #879 #880 is one of the examples. #937 can't pass ci because g++ fails when the file path contains spaces.
Solution
Splitting the matrix job into two separate jobs suffixed with "java8" and "java9", so it won't contains any space in workspace.