Monocle in 8u25

Tom Eugelink tbee at tbee.org
Wed Nov 12 21:17:26 UTC 2014


org.jftras:openjfx-monicle:1.8.0_20 is available in Maven central.

Tom


On 12-11-2014 09:09, Benjamin Gudehus wrote:
> That would be nice, Tom.
>
> Example usage:
>
> Since com.sun.glass.ui.PlatformFactory can't find Monocle classes from the external jars, we need to change
>
> public static void main(String[] appArgs) {
>     Application.launch(appClass, appArgs);
> }
>
> to
>
> public static void main(String[] appArgs) {
>     new ToolkitApplicationLauncher().launch(appClass, appArgs);
> }
>
> and start the Application with -Djavafx.monocle.headless=true.
>
> ToolkitApplicationLauncher.jar: https://gist.github.com/hastebrot/cbca1128dd791966e3a6
>
>
> On Wed, Nov 12, 2014 at 8:48 AM, Tom Eugelink <tbee at tbee.org <mailto:tbee at tbee.org>> wrote:
>
>     I can roll it out under the same name (openjfx-monocle-1.8.0_20) within the org.jfxtras group. Just say so.
>
>     Tom
>
>
>
>
>
>     On 12-11-2014 08:30, Benjamin Gudehus wrote:
>>     Hi all!
>>
>>     Files and instructions are available at https://github.com/TestFX/Monocle.
>>
>>     Releases with jars: https://github.com/TestFX/Monocle/releases
>>
>>     License (taken from OpenJFX respository): https://github.com/TestFX/Monocle/blob/master/LICENSE
>>
>>     Would be nice to have this available from Maven.
>>
>>     --Benjamin
>>
>>     On Wed, Nov 5, 2014 at 8:20 PM, Tom Eugelink <tbee at tbee.org <mailto:tbee at tbee.org>> wrote:
>>
>>         This is extremely good news. I have no problem to "drag" that library along in the JFXtras project (project name seems to be a good match for this usage ;-) and release it to maven - if that is allowed by the JavaFX license.
>>
>>         Tom
>>
>>
>>
>>         On 5-11-2014 16:57, Benjamin Gudehus wrote:
>>
>>             Hi Sean,
>>
>>             I've put the Monocle sources directly in my code directories for
>>             testing purposes. Putting it into a separate Jar is possible and I
>>             thought that pre-compiled jars could be provided via Maven.
>>
>>             I didn't do a complete OpenJFX build, because I was only interested in
>>             the Headless component of Monocle, i.e. I didn't needed the
>>             platform-dependent dynamic libraries.
>>
>>             Rough instructions were given in a previous mail. There were some
>>             request to provide the pre-compoile jars so I will additionally set up
>>             a public repository with detailed instructions when I'm back home.
>>
>>             --Benjamin
>>
>>             On 11/5/14, Sean True <sean.true at gmail.com <mailto:sean.true at gmail.com>> wrote:
>>
>>                 Did you build the glass/ui/monocle sources into a separate jar, or did you
>>                 do a complete OpenJFX build?
>>
>>                 If you did a separate build, a recipe would be extremely helpful.
>>
>>                 -- Sean
>>
>>                 On Tue, Nov 4, 2014 at 6:17 PM, Benjamin Gudehus <hastebrot at gmail.com <mailto:hastebrot at gmail.com>>
>>                 wrote:
>>
>>                     I managed to run Monocle/Headless on Windows with 8u25. This will allow
>>                     users to run headless tests.
>>
>>                     All what is needed is to copy all files from "com/sun/glass/ui/monocle"
>>                     of
>>                     "javafx-src.zip" and add the
>>                     cursor resource files from
>>                     "modules/graphics/src/main/resources/com/sun/glass/ui/monocle" of the
>>                     related hg tag in the OpenJFX repository [1].
>>
>>                     Before Application#launch() is called we need to manually set the Glass
>>                     and
>>                     Monocle platforms:
>>
>>                     accessStaticField(com.sun.glass.ui.PlatformFactory.class, "instance",
>>                          new com.sun.glass.ui.monocle.MonoclePlatformFactory());
>>                     accessStaticField(com.sun.glass.ui.monocle.NativePlatformFactory.class,
>>                     "platform",
>>                          new com.sun.glass.ui.monocle.headless.HeadlessPlatform());
>>
>>                     The directory structure in 8u40 is a bit different, but there could be
>>                     added version checks. Checking
>>                     for the JVM vars "glass.platform" and "monocle.platform" might be also
>>                     added to this code.
>>
>>                     [1] http://hg.openjdk.java.net/openjfx/8u-dev/rt/tags
>>
>>
>>                     On Tue, Nov 4, 2014 at 8:42 PM, Benjamin Gudehus <hastebrot at gmail.com <mailto:hastebrot at gmail.com>>
>>                     wrote:
>>
>>                         Hmm. Seems that Class.forName() in com.sun.glass.ui.PlatformFactory
>>                         won't
>>                         retrieve externally defined PlatformFactorys. So I will try to set the
>>                         PlatformFactory.instance field manually, before the
>>                         Application/Tookit/FX-Thread is launched.
>>
>>                         On Tue, Nov 4, 2014 at 7:36 PM, Benjamin Gudehus <hastebrot at gmail.com <mailto:hastebrot at gmail.com>>
>>                         wrote:
>>
>>                             Thank you. That makes it clearer. :)
>>
>>                             Is it possible to supply the headless part of Monocle in an external
>>                             Jar
>>                             for desktop platforms?
>>
>>                             As far as I know the only possibility to run TestFX tests with
>>                             Hudson/Jenkins is in headless mode.
>>                             TestFX's tests itself can only run with the X virtual framebuffer on
>>                             Linux test clients for the Travis CI so far.
>>
>>                             So far the only advice I could give TestFX users who like to run
>>
>>                     headless
>>
>>                             tests is to use 1.8.0_20-ea-b05.
>>
>>
>>
>
>



More information about the openjfx-dev mailing list