The Wiki is out of date. VS 2017 Professional is now required to build
OpenJFX. A fix was just pushed [1] to allow a different build of VS 2017
than the hard-coded one.
Also, I am still able to build with VS 2010 and VS 2013, which should
work as long as you don't build media or webkit (they aren't built by
default).
-- Kevin
[1] https://bugs.openjdk.java.net/browse/JDK-8187366
Chris Newland wrote:
Hi,
I'm also trying to build OpenJFX on Windows 10 so I can add a Windows
build to my community OpenJFX build server at https://chriswhocodes.com
and am hitting the same problems as you.
Setting WINSDK_DIR on the command line using 'set' or 'export' doesn't
work and neither does setting via the Windows environment manager UI.
Hardcoding got me past this one:
def WINDOWS_SDK_DIR="..." above the check.
Next error I'm hitting is NativeCompileTask.compile()
This is with Windows 10, VS10 Express, WinSDK 7.1, and DirectX June 2010.
buildSrc/win.gradle has hardcoded paths to VS2017 Professional so I'm
guessing the devs who wrote this build script have got it working on a
more modern build environment than the one described in the docs.
Will post here if I can get it to build.
Cheers,
Chris
On Tue, October 3, 2017 02:14, jav...@use.startmail.com wrote:
Hi again !
Well I was able to track down the source of the error I am receiving
from the gradle build. Unfortunately, the error persists, which is a bit of
a mystery. Maybe a gradle maven can enlighten me here.
For some reason, this line on line 90-91 of win.gradle is throwing the
exception, although I can prove it ought not to:
if (WINDOWS_SDK_DIR == null || WINDOWS_SDK_DIR == "") { throw new
GradleException("FAIL: WINSDK_DIR not defined");
I cannot get past this, the exception is triggered, and yet the
assignment of a value to property WINDOWS_SDK_DIR is quite clear here (line
of 69 win.gradle): defineProperty("WINDOWS_SDK_DIR", properties,
System.getenv().get("WINSDK_DIR"))
and that system variable is, in fact, set as proved by (my) running this
simple program I wrote (which exists in the same directory as win.gradle
to exclude any conceivable path issues) and getting the proper
outputpublic class WinSDK { public WinSDK() { }
public static void main(String[] args) { String sdk =
(String)System.getenv().get("WINSDK_DIR");
System.out.println("sdk = " + sdk);
}
}
Output as expected- the proper path to Microsoft SDK and anyways
certainly not the empty string or null.
Sorry to ask such a basic question but is anyone on this list actually
able to clone then compile OpenFX from source using the procedure outlined
on the below mentioned page using any of the gradle scripts, (in my
instance gradle.win) ?
Seems like first -step level stuff that is done regularly by everyone
on the list interested in improving or exploring OpenFX but maybe I am
wrong about this?
Many thanks in advance.
On Thursday, September 28, 2017 6:59 PM, jav...@use.startmail.com
wrote:
Hi All,
New member to this group. I am encountering a little trouble when I
try to build OpenJFX. I am following the instructions here: (using Cygwin
on Win 7):
https://wiki.openjdk.java.net/display/OpenJFX/Building+OpenJFX
When I run gradle after cloning the OpenJFX repository, I get a
"build
failed with exception" . I include the output from the entire run just in
case it's significant:
$ gradle
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by
org.gradle.internal.reflect.JavaMethod
(file:/C:/gradle/lib/gradle-base-services-3.1.jar) to method
java.lang.ClassLoader.getPackages() WARNING: Please consider reporting
this to the maintainers of org.gradle.internal.reflect.JavaMethod
WARNING: Use --illegal-access=warn to enable warnings of further
illegal reflective access operations WARNING: All illegal access
operations will be denied in a future release
:buildSrc:generateGrammarSource UP-TO-DATE
:buildSrc:compileJava UP-TO-DATE
:buildSrc:compileGroovy UP-TO-DATE
:buildSrc:processResources UP-TO-DATE
:buildSrc:classes UP-TO-DATE
:buildSrc:jar UP-TO-DATE
:buildSrc:assemble UP-TO-DATE
:buildSrc:compileTestJava UP-TO-DATE
:buildSrc:compileTestGroovy UP-TO-DATE
:buildSrc:processTestResources UP-TO-DATE
:buildSrc:testClasses UP-TO-DATE
:buildSrc:test UP-TO-DATE
:buildSrc:check UP-TO-DATE
:buildSrc:build UP-TO-DATE
FAILURE: Build failed with an exception.
* Where:
Script 'C:\cygwin64\home\mdbg\rt\buildSrc\win.gradle' line: 91
* What went wrong:
A problem occurred evaluating script.
FAIL: WINSDK_DIR not defined
* Try:
Run with --stacktrace option to get the stack trace. Run with --info
or --debug option to get more log output.
BUILD FAILED
Total time: 1.376 secs
I should add that even though the tutorial doesn't mention to do it,
I
cd-ed into the folder named rt, which was created by Mercurial when I
cloned OpenJFX, I called gradle from there. Calling it from the
directory containing rt resulted in nothing happening , which makes
sense afaik.
the variable WINSDK is not one I am familiar with- it's not any
environment or system variable on my machine and the tutorial doesn't
say anything about it. I hesitate to start arbitrarily hacking build
files based on error messages. It seems as though it ought to just work
and perhaps this is a bug I should report or is it something else ?
Thank you!