Crystark / Orestes-Bloomfilter

Library of different Bloom filters in Java with optional Redis-backing, counting and many hashing options.
Other
20 stars 12 forks source link

Java7 Backport Maven Jar Files compiled in Java8 #1

Open gimg1 opened 8 years ago

gimg1 commented 8 years ago

The Java 7 Backport (Crystark/Orestes-Bloomfilter) is actually compiled in Java8. I added the jars to my local maven repo and attempted to use version 1.02 (port-java7 - Orestes-Bloomfilter/maven-repo/com/baqend/bloom-filter/1.02/) but when running tests I receive the following exception:

java.lang.UnsupportedClassVersionError: orestes/bloomfilter/FilterBuilder : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at .BloomFilterManager.(BloomFilterManager.java:118) at .BloomFilterManager.(BloomFilterManager.java:20) at .BloomFilterManager$HoldInstance.(BloomFilterManager.java:87) at <shortened.BloomFilterManager.getInstance(BloomFilterManager.java:95) at .BloomFilterManagerTest.setup(BloomFilterManagerTest.java:46)

Version 52.0 references java8. The workaround for me was to just compile the code myself under Java7 but others may run into issues in the future when trying to use the back port pre compiled jar in their 1.7 environment. Great library by the way! Thanks :)

Crystark commented 8 years ago

Hi,

This is a fork of the original project. I never made or uploaded any builds besides the 1.03-port-java7 so yeah, 1.02 is an original java 8 build. So indeed, the only way to get this working is to clone and build the port-java7 branch (or use 1.03-port-java7 but it has some bugs that i fixed in the branch).

Cheers