Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Processing 2.1 fails to compile all of its projects using JDK8 EA b119 error: The type java.util.Map$Entry cannot be resolved. #2260
Comments
monkstone
commented
Dec 15, 2013
|
Well that is the point, requires a 1.6 compliant compiler. This is normal with java, a feature gets deprecated, then it is supported for a while (like for the following generation compiler). Then kerplunk it is no longer supported in subsequent versions (jdk8 is not released until next year, and the java folks have been known to change their minds). I have been experimenting with jdk8 myself, as a runtime for processing (jdk7 compiled) /ruby-processing all seems to work well (improved garbage collection etc). |
|
It appears that JDK 8 do not work well in combination with ecj and the -source argument. Processing internally used the Eclipse ecj compiler: $ cat HelloWorld.java public class HelloWorld { #download the eclipse ecj version used internally by processing. tar zxvf jdk-8-ea-bin-b119-linux-i586-05_dec_2013.tar.gz ./jdk1.8.0/bin/java -jar ecj.jar -source 1.6 -classpath . -nowarn HelloWorld.java Annotation processing got disabled, since it requires a 1.6 compliant JVM
Compilation fails similarly using -source 7 as well. The compilation succeed if ecj.jar is invoked without the -source 1.6 argument:./jdk1.8.0/bin/java -jar ecj.jar -classpath . -nowarn HelloWorld.java |
|
Replacing java/mode/ecj.jar with http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/R-4.3.1-201309111000/ecj-4.3.1.jar appears to fix the issue. |
|
JDK 8 is unreleased software... There's no chance we're going to support early access releases of Java. |
benfry
closed this
Jan 22, 2014
|
Happy #openjdk 8 release day! |
xranby commentedDec 13, 2013
Processing 2.1 fails to compile all of its projects using JDK8 EA b119
error: The type java.util.Map$Entry cannot be resolved.
This issue is reported to:
https://bugs.openjdk.java.net/browse/JDK-8024935 - compilation succeeds in java7 but fails in java8
http://mail.openjdk.java.net/pipermail/quality-discuss/2013-December/000204.html
steps to reproduce:
Download JDK8 EA b119 from:
https://jdk8.java.net/download.html
cd processing-2.1
replace the bundled jdk inside processing with JDK8 EA b119
mv java java-bundled
mv jdk1.8.0 java
run
./processing
Press
Sketch->Run
without entering any code fails with the following output:
Annotation processing got disabled, since it requires a 1.6 compliant JVM
/tmp/sketch_131213a3040094527895471164temp/sketch_131213a.java:1: error: The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files
import processing.core.*;
^
1 problem (1 error)