Posts for Tag: technology

JasperReports - Unsupported major.minor version 51.0

Just ran into something a bit far fetched: My Jasper reports were not working in VOS, our JAVA Swing application at Inforviegas. It complained with an error along these lines: Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedClassVersionError: CCClient_1334580618412_476658 : Unsupported major.minor version 51.0

The only difference from business as usual was that i changed laptops.

We are using the jasperreports-maven-plugin to compile the reports from maven. In our pom.xml files we always define the maven-compiler-plugin target and source versions of the virtual machine. One would assume that the jasper plugin would use the same version of the maven-compiler-plugin, right? Wrong. It uses the default virtual machine set in your computer. And since i had Java 7 as the default and we are compiling to Java 6, the reports end up with the wrong java version, making them not show in our application.

Hope this helps some people save some time, since i couldn't :)

Count (group by) number of line occurrences in file

Here's a neat ruby script to group and count the number of occurrences of lines inside a given file.

count.rb list = IO.readlines(ARGV[0]) h = {|hash, key| hash[key] = 0} list.each {|item| h[item] += 1} h = h.sort_by { |k,v| v }.reverse h.each_with_index do |p,i| puts "(#{p[1]}) #{p[0]}" if ARGV[1] and ARGV[1].to_i <= i + 1 break end end Usage is: ruby count.rb <file> [show_at_most_n] If you have a file named "faren.txt" comprised of the following lines: test test awesome dude dude dude faren meran Running the script  with: ruby count.rb faren.txt Will yield the following result: (3) dude (2) test (1) awesome (1) faren (1) meran In addition, if you pass the "show_at_most_n" parameter (a number), it will only print that number of results. For example 2 will show the following: (3) dude (2) test