Gradle build progress

Richard Bair richard.bair at oracle.com
Wed Mar 20 13:13:48 PDT 2013


Hi Peter,

This will be because the stub binary is not available. Where do you have the JDK 8 b81 jfxrt.jar file located?

Thanks!
Richard

On Mar 20, 2013, at 1:03 PM, Peter Pilgrim <peter.pilgrim at gmail.com> wrote:

> Hey Richard
> 
> I just tried with Gradle 1.4 and the compilation failed.
> 
> Hope this helps
> 
> peterpilgrim at Peters-MacBook-Pro-3.local [572] > gradle clean
> The CompileOptions.useAnt property has been deprecated and is
> scheduled to be removed in Gradle 2.0. There is no replacement for
> this property.
> :base:clean
> :build-tools:clean
> :controls:clean
> :designTime:clean
> :fxml:clean
> :graphics:clean
> :swing:clean
> :swt:clean
> :graphics:effects-jsl:clean
> :graphics:native:clean
> :graphics:prism-jsl:clean
> 
> BUILD SUCCESSFUL
> 
> Total time: 3.348 secs
> peterpilgrim at Peters-MacBook-Pro-3.local [573] > gradle sdk
> The CompileOptions.useAnt property has been deprecated and is
> scheduled to be removed in Gradle 2.0. There is no replacement for
> this property.
> :base:processVersion
> :build-tools:generateGrammarSource
> :build-tools:compileJava
> :build-tools:processResources
> :build-tools:classes
> :build-tools:jar
> :base:compileJava
> [ant:javac] Note:
> /Users/peterpilgrim/Documents/IdeaProjects/open-jfx-8/master/javafx/modules/base/src/main/java/com/sun/scenario/animation/shared/InterpolationInterval.java
> uses or overrides a deprecated API.
> [ant:javac] Note: Recompile with -Xlint:deprecation for details.
> [ant:javac] Note: Some input files use unchecked or unsafe operations.
> [ant:javac] Note: Recompile with -Xlint:unchecked for details.
> :base:processResources UP-TO-DATE
> :base:classes
> :base:jar
> :base:assemble
> :build-tools:assemble
> :graphics:compileJava
> [ant:javac] /Users/peterpilgrim/Documents/IdeaProjects/open-jfx-8/master/javafx/modules/graphics/src/main/java/com/sun/glass/ui/accessible/AccessibleRoot.java:28:
> error: package com.sun.javafx.accessible.utils does not exist
> [ant:javac] import com.sun.javafx.accessible.utils.NavigateDirection;
> [ant:javac]                                       ^
> [ant:javac] /Users/peterpilgrim/Documents/IdeaProjects/open-jfx-8/master/javafx/modules/graphics/src/main/java/com/sun/glass/ui/accessible/AccessibleRoot.java:29:
> error: package com.sun.javafx.accessible.utils does not exist
> [ant:javac] import com.sun.javafx.accessible.utils.Rect;
> [ant:javac]                                       ^
> [ant:javac] /Users/peterpilgrim/Documents/IdeaProjects/open-jfx-8/master/javafx/modules/graphics/src/main/java/com/sun/glass/ui/accessible/AccessibleRoot.java:30:
> error: package com.sun.javafx.accessible.providers does not exist
> [ant:javac] import com.sun.javafx.accessible.providers.AccessibleProvider;
> [ant:javac]                                           ^
> [ant:javac] /Users/peterpilgrim/Documents/IdeaProjects/open-jfx-8/master/javafx/modules/graphics/src/main/java/com/sun/glass/ui/accessible/AccessibleRoot.java:112:
> error: cannot find symbol
> [ant:javac]     private AccessibleProvider hostRawElementProvider() {
> 
> etc, etc
> 
> 
> On 20 March 2013 17:55, Richard Bair <richard.bair at oracle.com> wrote:
>> I think the gradle scripts are now far enough along that you ought to be able to successfully build using them on Mac, Linux, or Windows. At least, I've managed to build on all three platforms but no doubt there are bugs on various platforms due to different configurations.
>> 
>> To try out the gradle scripts, get the latest graphics repo (http://hg.openjdk.java.net/openjfx/8/graphics, http://hg.openjdk.java.net/openjfx/8/graphics/rt).
>> 
>> cd rt
>> gradle -b generator.gradle
>> cd ../javafx
>> gradle sdk
>> 
>> You need to have gradle 1.4 installed on your system (I can't use gradlew for now because including a 3rd party library in our source repository requires legal review blah blah). I haven't tried it with other versions of Gradle.
>> 
>> It should successfully build all Java & native code, and successfully download antlr, junit, and swt dependencies. It requires that artifacts/sdk/rt/lib/ext/jfxrt.jar is present in your root graphics dir just the same as the normal build, OR you can specify -PBINARY_STUB=/path/to/latest/binary/stub/jfxrt.jar
>> 
>> Please give it a try and let me know if it works for you or if it fails.
>> 
>> I've also run apps based on the resulting libraries. Note that the JDK 8 builds have jfxrt.jar and associated native libraries on the ext class path, which means when you run an app you will likely run into a mismatch of native libraries or java source files. What I did was to remove jfxrt.jar and the prism, prism-sw, decora-sse, and glass dylibs  *out* of my Java 8 JDK and supplied my gradle-built jfxrt.jar first on the class path followed by the binary stub (old jfxrt.jar) file.
>> 
>> Its a pain in the neck, I know. You can also mess with the ext class path / boot class path settings, but that's a pain too. The joys of JDK development :-/. Open to better suggestions on how to run locally built jfxrt.jar and native libraries against a stock Java 8 without all the muss & fuss.
>> 
>> My next tasks:
>>        - confirm javadoc generation works
>>        - fix any failing tests or configuration that causes tests to fail
>>                - specifically I'm working to get most tests to run reliably in a single VM as they then execute 10x-100x faster
>>        - jardiff the jfxrt.jar normally built with the one built by gradle to look for bugs in the build script
>>        - fix any build issues reported on this thread
>>        - IDE integration
>> 
>> Then I will work with Mong to get the release engineering requirements in place and get a build setup on hudson and make sure all that is working fine.
>> 
>> Richard
> 
> 
> 
> -- 
> Peter Pilgrim,
> **Java Champion**,
> Java EE Software Development / Design / Architect for `BlueChip'
> enterprises, London, UK
> 
> JavaFX ++ Scala ++ Groovy ++  Android ++ Java
> 
> :: http://www.xenonique.co.uk/blog/  ::
> :: http://twitter.com/peter_pilgrim ::
> :: http://audio.fm/profile/peter_pilgrim  ::
> :: Skype Call peter_pilgrim ::
> :: http://java-champions.java.net/ ::



More information about the openjfx-dev mailing list