It has been quite long since the last time I wrote an actual technical blog entry. Then I was too much busy being inactive, and I did change my job. Now I am in a position that I have learnt every day. I should have written this post a year ago in order to summarize the knowledge I got, but whenever I type a few words, I feel exhausted. This time is my big try. *hat off*
I assume that you are familiar with:
- Gradle, a build system where you can write scripts to automate your tasks, in the scope of this entry, Android build/test tasks.
- Test-driven development (TDD), a software development process in which test cases are written before you code; or at least when you finished coding, the test cases are finished also.
- Continuous Integration (CI), a development practice that requires you to integrate code into a shared repository several times a day.
The combination of Gradle, TDD and CI gives a result that every time you push code into a rep…
Recently I have worked on a 'boring' Java project which uses OpenJDK 7. I want to continuous integrate that project using CircleCI and I had tried to build it on a Linux Ubuntu 14.04 (Trusty), which is the newest version that CircleCI offers. While doing so, I encountered a problem, which, after narrowed down the scope, I found that not occur when I used OracleJDK or build on Linux Ubuntu 12.04 (Precise).
I don't want to downgrade the OS version and I still have not figured out what goes wrong with OpenJDK, so I have temporarily chosen OracleJDK on Ubuntu 14.04. I also stay with version 7 because I don't want to upgrade the JDK version to version 8.
CircleCI Ubuntu 14.04 does not have OracleJDK 7 pre-installed
As mentioned in CircleCI build images page, CircleCI's Ubuntu 14.04 machines has JDK 6, 7, 8 pre-installed, both OracleJDK and OpenJDK; and oraclejdk7 is the default version unless you describe a version you want in the machine section, like: