Why does "ls -l" display the year of my (jar) file as "16:18"?
From man ls (The Long Format):


  If the modification time of the file is more than 6 months in the past or future, then the year of the last modification is displayed in place of the hour and minute fields.


Or in other words: It works as designed.