retrolambda
Stephen F Northover
steve.x.northover at oracle.com
Fri May 2 18:24:36 UTC 2014
This is good news. This means that you are using JDK8 to compile
everything, then fixing the bytecodes.
Is the next step to modify the OpenJFX build to start with a jar that
does not contain classes such as SWT that have no hope of running on the
target?
Steve
On 2014-05-02 5:43 AM, Johan Vos wrote:
> Hi,
>
> I was able to refactor all lambda's out of the class files of jfxrt.jar
> using RetroLambda 1.1.5-SNAPSHOT.jar (after adding the eclipse swt jar to
> the classpath and removing jfxrt.jar from the bootclasspath).
>
> This means that the builds for platforms that don't support invokedynamic
> should be able to work with the OpenJFX code base.
> I'll try to add the retrolambda gradle plugin somehow in the openjfx gradle
> system. As I'm not an expert with gradle, some help would be appreciated.
>
> At this moment, I simply unzipped the jfxrt.jar, removed the jfxrt.jar from
> the lib/ext directory in the Java 8 install, and executed
>
> java -Dretrolambda.inputDir=class
> -Dretrolambda.classpath=class:org.eclipse.swt.gtk.linux.x86_64_3.7.2.v3740f-.jar
> -Dretrolambda.outputDir=retroclass -javaagent:retrolambda.jar -jar
> retrolambda.jar
>
>
> It should be possible to optionally do this retrocompiling task during the
> build of OpenJFX. In my JavaFX-Android applications, I use
> gradle-retrolambda as follows:
> buildscript {
> repositories {
> mavenCentral()
> }
>
> dependencies {
> classpath 'me.tatarka:gradle-retrolambda:1.3.0'
> }
> }
> ...
> apply plugin: 'retrolambda'
>
> - Johan
More information about the openjfx-dev
mailing list