If cygpath isn't needed and that's all cygwin was used for, and you
already modified build.gradle to avoid the cygpath calls.... What's
stopping you for checking that in so the cygwin requirement for
OpenJFX can be dropped?
The Gradle C/C++ support includes a method for creating a VS project
from the Gradle source (since Gradle 1.11, see
http://www.gradle.org/docs/1.11/release-notes#generate-visual-studio-configuration-for-a-native-binary-project).
So you should be able to get that productivity boost without having
to roll your own project files and maintain them.
Scott
On Wed, Oct 29, 2014 at 12:04 PM, Vadim Pakhnushev
<vadim.pakhnus...@oracle.com <mailto:vadim.pakhnus...@oracle.com>>
wrote:
At least for the OpenJFX without media/webkit Cygwin is used only
for path manipulation (cygpath) so I don't think dropping it will
boost performance at all.
In fact, I just did a quick test and built OpenJFX without cygwin
at all (modifying build.gradle so it will not call cygpath).
Visual Studio is the only viable option for Windows development.
When I was actively developing native Windows code, I created my
own VS project which can build native dlls just fine without even
calling gradle and that was huge productivity boost.
Thanks,
Vadim
On 29.10.2014 18:05, Chris Bensen wrote:
+1 Visual Studio provides the best debugger and losing that
would be very sad.
If we didn’t require Cygwin the build would also be faster!
Chris
On Oct 24, 2014, at 9:00 PM, Scott Palmer <swpal...@gmail.com
<mailto:swpal...@gmail.com>> wrote:
Jettisoning the MS tools would be a bad idea. The Visual
Studio compiler or the Intel compiler are really the only
reasonable options for building native code on Windows.
I'm not aware of any professional programmer that uses GCC
on Windows... Not because GCC is bad, the Windows ports
just aren't capable of compiling against a real Windows
SDK. The MinGW tools come with their own headers to try to
work around this, but the last time I checked, it just
didn't work well enough.
That said,I think the right approach in the long term is
to move the build to use Gradle's support for C and C++.
It supports the MS compiler as well as MinGW on Windows
and all the popular compilers on other platforms. If we
combined that with the ability to build just the 32bit JDK
when running with the MS compiler, it would offer a decent
solution for those using free tools on Windows.
Another goal should be to remove the requirement for
Cygwin as it can cause its own set of problems. I'm not
sure what it is used for that can't be done with Gradle
and/or pure java libraries directly.
Scott
On Oct 24, 2014, at 2:05 PM, Richard Steiger
<rstei...@ensemblesoft.net
<mailto:rstei...@ensemblesoft.net>> wrote:
Stephen,
Sorry for the mis-communication: in my original
message, I was able to do incremental java
compilation, but hadn't tried to do the full build,
since hadn't made changes to any of the native code.
Your reply straighted me out, that I need to be doing
full builds to pick-up changes in either the cpp or
low-level java code. I haven't been able to get the
native builds to work, without it failing in either
the cpp compiler or linker.
I still could use a hand to get working tooling.
Also, care to comment whether there's any plan to
jetisson the MS tools in the openjfx project, or at
least align it with openjdk9's build system?
Thanks,
-rjs
On 10/24/2014 10:43 AM, Stephen F Northover wrote:
Hi Richard,
Your previous email indicated that you could
build, but that you can't see the shared libraries.
Please try adding this the VM Arguments of your
Eclipse launch configuration:
-Djava.library.path=${workspace_loc:rt}/build/sdk/rt/bin
-Djavafx.verbose=true
Thanks,
Steve
On 2014-10-24, 1:31 PM, Richard Steiger wrote:
To recap a message I sent to the list on 9/12,
I'm a newbie to JavaFX, and hoping to be able
to contribute, initially fixing bugs.
Stephen, I'm attempting to follow the
instructions at:
https://wiki.openjdk.java.net/display/OpenJFX/Using+an+IDE,
and have found that the Visual Studio tools it
calls out don't include the amd64 tools, have
struggled to adapt win.gradle to VS 2011, and
otherwise dulled my pick. Also, when
comparing the above instructions to openjdk9's
build setup, I'm also wondering whether
someone's revised the openjfx win build to use
gcc, MinGW, Code::Blocks, clang++, or any
other toolset besides the MS crud.
Rather than dragging y'all through the
blow-by-blow challenges I've been getting hit
with, what I'm hoping is that one of you who's
actively developing on a 64-bit Windows 7+
environment is willing to lend a hand to get
me set-up with a working rig. Please reply to
just me if you're willing to help, I think I
just need a few minutes here and there to pick
the right tools, verify I'm working against
the correct repo, etc.
Thanks in advance,
-rjs
On 9/12/2014 2:40 PM, Stephen F Northover
wrote:
Hi Richard,
Did you follow the instructions at this
link:
https://wiki.openjdk.java.net/display/OpenJFX/Using+an+IDE
?
You are picking up a set of shared
libraries that do not match the java code
you are running in the IDE. You need to
set java.library.path. It's on the wiki
and I meant to update it to be something
sensible. My build puts the dll's in an
artifacts directory:
-Djava.library.path=${workspace_loc:rt}/../artifacts/sdk/rt/bin
You will need to edit this expression to
pick up the dll's from the standard build
place (which I forget right now).
Steve
On 2014-09-12, 5:31 PM, Richard
Steiger wrote:
I'm a newbie to JavaFX, and hoping to
be able to contribute down the road
once I learn much more about it.
To that end, I've been trying to get
8u-dev eclipse projects setup on a
Win7 box so I can start stepping
through the code. The current
show-stopper is getting
UnsatisfiedLinkErrors when the system
is trying to access dlls, such as
glass.dll.
My rig:
* jdk1.8.0_05
*
eclipse-SDK-N20140722-2000-win32-x86_64 (Mars
stable build, has fix
for StackOverflow bug in eclipse j8
compiler)
* hg clone of 8u-dev as of 8/26
Setup:
* ran the gradle build (successfully)
* imported the eclipse projects in the
repo, all cleanly compile (but
had to fix cross-project links and
manually locate and attach 3p libs)
* removed javafx.* and related JavaFX
sources from JAVA_HOME/src
* moved jfxrt.jar to a cache directory
Failure situation:
* attempting to launch jfx apps under
eclipse debugger
The following console output is
typical of what I'm running into (with
-verbose:jni on the command line):
[Dynamic-linking native method
java.lang.Object.registerNatives ...
JNI]
[Registering JNI native method
java.lang.Object.hashCode]
[Registering JNI native method
java.lang.Object.wait]
[Registering JNI native method
java.lang.Object.notify]
[Registering JNI native method
java.lang.Object.notifyAll]
[Registering JNI native method
java.lang.Object.clone]
[Dynamic-linking native method
java.lang.System.registerNatives ...
JNI]
[Registering JNI native method
java.lang.System.currentTimeMillis]
[Registering JNI native method
java.lang.System.nanoTime]
[Registering JNI native method
java.lang.System.arraycopy]
[Dynamic-linking native method
java.lang.Thread.registerNatives ...
JNI]
[Registering JNI native method
java.lang.Thread.start0]
[Registering JNI native method
java.lang.Thread.stop0]
[Registering JNI native method
java.lang.Thread.isAlive]
[Registering JNI native method
java.lang.Thread.suspend0]
[Registering JNI native method
java.lang.Thread.resume0]
[Registering JNI native method
java.lang.Thread.setPriority0]
[Registering JNI native method
java.lang.Thread.yield]
[Registering JNI native method
java.lang.Thread.sleep]
[Registering JNI native method
java.lang.Thread.currentThread]
[Registering JNI native method
java.lang.Thread.countStackFrames]
[Registering JNI native method
java.lang.Thread.interrupt0]
[Registering JNI native method
java.lang.Thread.isInterrupted]
[Registering JNI native method
java.lang.Thread.holdsLock]
[Registering JNI native method
java.lang.Thread.getThreads]
[Registering JNI native method
java.lang.Thread.dumpThreads]
[Registering JNI native method
java.lang.Thread.setNativeName]
[Dynamic-linking native method
java.security.AccessController.getStackAccessControlContext
... JNI]
[Dynamic-linking native method
java.security.AccessController.getInheritedAccessControlContext
... JNI]
[Dynamic-linking native method
java.lang.Class.registerNatives ... JNI]
[Registering JNI native method
java.lang.Class.getName0]
[Registering JNI native method
java.lang.Class.getSuperclass]
[Registering JNI native method
java.lang.Class.getInterfaces0]
[Registering JNI native method
java.lang.Class.getClassLoader0]
[Registering JNI native method
java.lang.Class.isInterface]
[Registering JNI native method
java.lang.Class.getSigners]
[Registering JNI native method
java.lang.Class.setSigners]
[Registering JNI native method
java.lang.Class.isArray]
[Registering JNI native method
java.lang.Class.isPrimitive]
[Registering JNI native method
java.lang.Class.getComponentType]
[Registering JNI native method
java.lang.Class.getModifiers]
[Registering JNI native method
java.lang.Class.getDeclaredFields0]
[Registering JNI native method
java.lang.Class.getDeclaredMethods0]
[Registering JNI native method
java.lang.Class.getDeclaredConstructors0]
[Registering JNI native method
java.lang.Class.getProtectionDomain0]
[Registering JNI native method
java.lang.Class.getDeclaredClasses0]
[Registering JNI native method
java.lang.Class.getDeclaringClass0]
[Registering JNI native method
java.lang.Class.getGenericSignature0]
[Registering JNI native method
java.lang.Class.getRawAnnotations]
[Registering JNI native method
java.lang.Class.getConstantPool]
[Registering JNI native method
java.lang.Class.desiredAssertionStatus0]
[Registering JNI native method
java.lang.Class.getEnclosingMethod0]
[Registering JNI native method
java.lang.Class.getRawTypeAnnotations]
[Dynamic-linking native method
java.lang.ClassLoader.registerNatives
... JNI]
[Registering JNI native method
java.lang.ClassLoader.retrieveDirectives]
[Dynamic-linking native method
java.security.AccessController.doPrivileged
... JNI]
[Dynamic-linking native method
java.lang.Class.getPrimitiveClass ... JNI]
[Dynamic-linking native method
java.lang.Float.floatToRawIntBits ... JNI]
[Dynamic-linking native method
java.lang.Double.doubleToRawLongBits
... JNI]
[Dynamic-linking native method
java.lang.Double.longBitsToDouble ... JNI]
[Dynamic-linking native method
java.lang.System.initProperties ... JNI]
[Dynamic-linking native method
sun.misc.VM.initialize ... JNI]
[Dynamic-linking native method
java.lang.Runtime.maxMemory ... JNI]
[Dynamic-linking native method
java.io.FileInputStream.initIDs ... JNI]
[Dynamic-linking native method
java.io.FileDescriptor.initIDs ... JNI]
[Dynamic-linking native method
sun.misc.Unsafe.registerNatives ... JNI]
[Registering JNI native method
sun.misc.Unsafe.getObject]
[Registering JNI native method
sun.misc.Unsafe.putObject]
[Registering JNI native method
sun.misc.Unsafe.getObjectVolatile]
[Registering JNI native method
sun.misc.Unsafe.putObjectVolatile]
[Registering JNI native method
sun.misc.Unsafe.getBoolean]
[Registering JNI native method
sun.misc.Unsafe.putBoolean]
[Registering JNI native method
sun.misc.Unsafe.getBooleanVolatile]
[Registering JNI native method
sun.misc.Unsafe.putBooleanVolatile]
[Registering JNI native method
sun.misc.Unsafe.getByte]
[Registering JNI native method
sun.misc.Unsafe.putByte]
[Registering JNI native method
sun.misc.Unsafe.getByteVolatile]
[Registering JNI native method
sun.misc.Unsafe.putByteVolatile]
[Registering JNI native method
sun.misc.Unsafe.getShort]
[Registering JNI native method
sun.misc.Unsafe.putShort]
[Registering JNI native method
sun.misc.Unsafe.getShortVolatile]
[Registering JNI native method
sun.misc.Unsafe.putShortVolatile]
[Registering JNI native method
sun.misc.Unsafe.getChar]
[Registering JNI native method
sun.misc.Unsafe.putChar]
[Registering JNI native method
sun.misc.Unsafe.getCharVolatile]
[Registering JNI native method
sun.misc.Unsafe.putCharVolatile]
[Registering JNI native method
sun.misc.Unsafe.getInt]
[Registering JNI native method
sun.misc.Unsafe.putInt]
[Registering JNI native method
sun.misc.Unsafe.getIntVolatile]
[Registering JNI native method
sun.misc.Unsafe.putIntVolatile]
[Registering JNI native method
sun.misc.Unsafe.getLong]
[Registering JNI native method
sun.misc.Unsafe.putLong]
[Registering JNI native method
sun.misc.Unsafe.getLongVolatile]
[Registering JNI native method
sun.misc.Unsafe.putLongVolatile]
[Registering JNI native method
sun.misc.Unsafe.getFloat]
[Registering JNI native method
sun.misc.Unsafe.putFloat]
[Registering JNI native method
sun.misc.Unsafe.getFloatVolatile]
[Registering JNI native method
sun.misc.Unsafe.putFloatVolatile]
[Registering JNI native method
sun.misc.Unsafe.getDouble]
[Registering JNI native method
sun.misc.Unsafe.putDouble]
[Registering JNI native method
sun.misc.Unsafe.getDoubleVolatile]
[Registering JNI native method
sun.misc.Unsafe.putDoubleVolatile]
[Registering JNI native method
sun.misc.Unsafe.getByte]
[Registering JNI native method
sun.misc.Unsafe.putByte]
[Registering JNI native method
sun.misc.Unsafe.getShort]
[Registering JNI native method
sun.misc.Unsafe.putShort]
[Registering JNI native method
sun.misc.Unsafe.getChar]
[Registering JNI native method
sun.misc.Unsafe.putChar]
[Registering JNI native method
sun.misc.Unsafe.getInt]
[Registering JNI native method
sun.misc.Unsafe.putInt]
[Registering JNI native method
sun.misc.Unsafe.getLong]
[Registering JNI native method
sun.misc.Unsafe.putLong]
[Registering JNI native method
sun.misc.Unsafe.getFloat]
[Registering JNI native method
sun.misc.Unsafe.putFloat]
[Registering JNI native method
sun.misc.Unsafe.getDouble]
[Registering JNI native method
sun.misc.Unsafe.putDouble]
[Registering JNI native method
sun.misc.Unsafe.getAddress]
[Registering JNI native method
sun.misc.Unsafe.putAddress]
[Registering JNI native method
sun.misc.Unsafe.allocateMemory]
[Registering JNI native method
sun.misc.Unsafe.reallocateMemory]
[Registering JNI native method
sun.misc.Unsafe.freeMemory]
[Registering JNI native method
sun.misc.Unsafe.objectFieldOffset]
[Registering JNI native method
sun.misc.Unsafe.staticFieldOffset]
[Registering JNI native method
sun.misc.Unsafe.staticFieldBase]
[Registering JNI native method
sun.misc.Unsafe.ensureClassInitialized]
[Registering JNI native method
sun.misc.Unsafe.arrayBaseOffset]
[Registering JNI native method
sun.misc.Unsafe.arrayIndexScale]
[Registering JNI native method
sun.misc.Unsafe.addressSize]
[Registering JNI native method
sun.misc.Unsafe.pageSize]
[Dynamic-linking native method
java.lang.Throwable.fillInStackTrace
... JNI]
[Registering JNI native method
sun.misc.Unsafe.getObject]
[Registering JNI native method
sun.misc.Unsafe.putObject]
[Registering JNI native method
sun.misc.Unsafe.getObjectVolatile]
[Registering JNI native method
sun.misc.Unsafe.putObjectVolatile]
[Registering JNI native method
sun.misc.Unsafe.getBoolean]
[Registering JNI native method
sun.misc.Unsafe.putBoolean]
[Registering JNI native method
sun.misc.Unsafe.getBooleanVolatile]
[Registering JNI native method
sun.misc.Unsafe.putBooleanVolatile]
[Registering JNI native method
sun.misc.Unsafe.getByte]
[Registering JNI native method
sun.misc.Unsafe.putByte]
[Registering JNI native method
sun.misc.Unsafe.getByteVolatile]
[Registering JNI native method
sun.misc.Unsafe.putByteVolatile]
[Registering JNI native method
sun.misc.Unsafe.getShort]
[Registering JNI native method
sun.misc.Unsafe.putShort]
[Registering JNI native method
sun.misc.Unsafe.getShortVolatile]
[Registering JNI native method
sun.misc.Unsafe.putShortVolatile]
[Registering JNI native method
sun.misc.Unsafe.getChar]
[Registering JNI native method
sun.misc.Unsafe.putChar]
[Registering JNI native method
sun.misc.Unsafe.getCharVolatile]
[Registering JNI native method
sun.misc.Unsafe.putCharVolatile]
[Registering JNI native method
sun.misc.Unsafe.getInt]
[Registering JNI native method
sun.misc.Unsafe.putInt]
[Registering JNI native method
sun.misc.Unsafe.getIntVolatile]
[Registering JNI native method
sun.misc.Unsafe.putIntVolatile]
[Registering JNI native method
sun.misc.Unsafe.getLong]
[Registering JNI native method
sun.misc.Unsafe.putLong]
[Registering JNI native method
sun.misc.Unsafe.getLongVolatile]
[Registering JNI native method
sun.misc.Unsafe.putLongVolatile]
[Registering JNI native method
sun.misc.Unsafe.getFloat]
[Registering JNI native method
sun.misc.Unsafe.putFloat]
[Registering JNI native method
sun.misc.Unsafe.getFloatVolatile]
[Registering JNI native method
sun.misc.Unsafe.putFloatVolatile]
[Registering JNI native method
sun.misc.Unsafe.getDouble]
[Registering JNI native method
sun.misc.Unsafe.putDouble]
[Registering JNI native method
sun.misc.Unsafe.getDoubleVolatile]
[Registering JNI native method
sun.misc.Unsafe.putDoubleVolatile]
[Registering JNI native method
sun.misc.Unsafe.getByte]
[Registering JNI native method
sun.misc.Unsafe.putByte]
[Registering JNI native method
sun.misc.Unsafe.getShort]
[Registering JNI native method
sun.misc.Unsafe.putShort]
[Registering JNI native method
sun.misc.Unsafe.getChar]
[Registering JNI native method
sun.misc.Unsafe.putChar]
[Registering JNI native method
sun.misc.Unsafe.getInt]
[Registering JNI native method
sun.misc.Unsafe.putInt]
[Registering JNI native method
sun.misc.Unsafe.getLong]
[Registering JNI native method
sun.misc.Unsafe.putLong]
[Registering JNI native method
sun.misc.Unsafe.getFloat]
[Registering JNI native method
sun.misc.Unsafe.putFloat]
[Registering JNI native method
sun.misc.Unsafe.getDouble]
[Registering JNI native method
sun.misc.Unsafe.putDouble]
[Registering JNI native method
sun.misc.Unsafe.getAddress]
[Registering JNI native method
sun.misc.Unsafe.putAddress]
[Registering JNI native method
sun.misc.Unsafe.allocateMemory]
[Registering JNI native method
sun.misc.Unsafe.reallocateMemory]
[Registering JNI native method
sun.misc.Unsafe.freeMemory]
[Registering JNI native method
sun.misc.Unsafe.objectFieldOffset]
[Registering JNI native method
sun.misc.Unsafe.staticFieldOffset]
[Registering JNI native method
sun.misc.Unsafe.staticFieldBase]
[Registering JNI native method
sun.misc.Unsafe.ensureClassInitialized]
[Registering JNI native method
sun.misc.Unsafe.arrayBaseOffset]
[Registering JNI native method
sun.misc.Unsafe.arrayIndexScale]
[Registering JNI native method
sun.misc.Unsafe.addressSize]
[Registering JNI native method
sun.misc.Unsafe.pageSize]
[Registering JNI native method
sun.misc.Unsafe.defineClass]
[Registering JNI native method
sun.misc.Unsafe.allocateInstance]
[Registering JNI native method
sun.misc.Unsafe.monitorEnter]
[Registering JNI native method
sun.misc.Unsafe.monitorExit]
[Registering JNI native method
sun.misc.Unsafe.tryMonitorEnter]
[Registering JNI native method
sun.misc.Unsafe.throwException]
[Registering JNI native method
sun.misc.Unsafe.compareAndSwapObject]
[Registering JNI native method
sun.misc.Unsafe.compareAndSwapInt]
[Registering JNI native method
sun.misc.Unsafe.compareAndSwapLong]
[Registering JNI native method
sun.misc.Unsafe.putOrderedObject]
[Registering JNI native method
sun.misc.Unsafe.putOrderedInt]
[Registering JNI native method
sun.misc.Unsafe.putOrderedLong]
[Registering JNI native method
sun.misc.Unsafe.park]
[Registering JNI native method
sun.misc.Unsafe.unpark]
[Registering JNI native method
sun.misc.Unsafe.getLoadAverage]
[Registering JNI native method
sun.misc.Unsafe.copyMemory]
[Registering JNI native method
sun.misc.Unsafe.setMemory]
[Registering JNI native method
sun.misc.Unsafe.defineAnonymousClass]
[Registering JNI native method
sun.misc.Unsafe.shouldBeInitialized]
[Registering JNI native method
sun.misc.Unsafe.loadFence]
[Registering JNI native method
sun.misc.Unsafe.storeFence]
[Registering JNI native method
sun.misc.Unsafe.fullFence]
[Dynamic-linking native method
sun.reflect.Reflection.getCallerClass
... JNI]
[Dynamic-linking native method
java.io.FileDescriptor.set ... JNI]
[Dynamic-linking native method
java.io.FileOutputStream.initIDs ...
JNI]
[Dynamic-linking native method
java.security.AccessController.doPrivileged
... JNI]
[Dynamic-linking native method
java.lang.String.intern ... JNI]
[Dynamic-linking native method
java.lang.System.setIn0 ... JNI]
[Dynamic-linking native method
java.lang.Object.getClass ... JNI]
[Dynamic-linking native method
java.lang.Class.forName0 ... JNI]
[Dynamic-linking native method
sun.reflect.Reflection.getClassAccessFlags
... JNI]
[Dynamic-linking native method
sun.reflect.NativeConstructorAccessorImpl.newInstance0
... JNI]
[Dynamic-linking native method
java.lang.System.setOut0 ... JNI]
[Dynamic-linking native method
java.lang.System.setErr0 ... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.initIDs ... JNI]
[Dynamic-linking native method
java.lang.System.mapLibraryName ... JNI]
[Dynamic-linking native method
java.lang.ClassLoader$NativeLibrary.findBuiltinLib
... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.getBooleanAttributes
... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.canonicalize0
... JNI]
[Dynamic-linking native method
java.lang.ClassLoader$NativeLibrary.load
... JNI]
[Dynamic-linking native method
sun.misc.Signal.findSignal ... JNI]
[Dynamic-linking native method
sun.misc.Signal.handle0 ... JNI]
[Dynamic-linking native method
sun.io.Win32ErrorMode.setErrorMode ...
JNI]
[Dynamic-linking native method
java.lang.Compiler.registerNatives ...
JNI]
[Registering JNI native method
java.lang.Compiler.compileClass]
[Registering JNI native method
java.lang.Compiler.compileClasses]
[Registering JNI native method
java.lang.Compiler.command]
[Registering JNI native method
java.lang.Compiler.enable]
[Registering JNI native method
java.lang.Compiler.disable]
[Dynamic-linking native method
java.lang.Class.isAssignableFrom ...
JNI]
[Dynamic-linking native method
java.io.FileInputStream.open ... JNI]
[Dynamic-linking native method
java.io.FileInputStream.readBytes ... JNI]
[Dynamic-linking native method
java.io.FileInputStream.available ... JNI]
[Dynamic-linking native method
java.lang.reflect.Array.newArray ...
JNI]
[Dynamic-linking native method
java.lang.Runtime.availableProcessors
... JNI]
[Dynamic-linking native method
java.io.FileInputStream.close0 ... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.list ... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.canonicalizeWithPrefix0
... JNI]
[Dynamic-linking native method
java.lang.ClassLoader.findLoadedClass0
... JNI]
[Dynamic-linking native method
java.lang.ClassLoader.findBootstrapClass
... JNI]
[Dynamic-linking native method
sun.misc.VMSupport.initAgentProperties
... JNI]
[Dynamic-linking native method
java.lang.invoke.MethodHandleNatives.registerNatives
... JNI]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.init]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.expand]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.resolve]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.getConstant]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.getNamedCon]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.getMembers]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.objectFieldOffset]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.setCallSiteTargetNormal]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.setCallSiteTargetVolatile]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.staticFieldOffset]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.staticFieldBase]
[Registering JNI native method
java.lang.invoke.MethodHandleNatives.getMemberVMInfo]
[Registering JNI native method
java.lang.invoke.MethodHandle.invoke]
[Registering JNI native method
java.lang.invoke.MethodHandle.invokeExact]
[Dynamic-linking native method
java.lang.ClassLoader$NativeLibrary.find
... JNI]
[Dynamic-linking native method
java.security.AccessController.doPrivileged
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.initIDs ... JNI]
[Dynamic-linking native method
java.lang.Package.getSystemPackage0
... JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.getLength ... JNI]
[Dynamic-linking native method
sun.misc.Perf.registerNatives ... JNI]
[Registering JNI native method
sun.misc.Perf.attach]
[Registering JNI native method
sun.misc.Perf.detach]
[Registering JNI native method
sun.misc.Perf.createLong]
[Registering JNI native method
sun.misc.Perf.createByteArray]
[Registering JNI native method
sun.misc.Perf.highResCounter]
[Registering JNI native method
sun.misc.Perf.highResFrequency]
[Dynamic-linking native method
java.lang.ClassLoader.defineClass1 ...
JNI]
[Dynamic-linking native method
java.io.WinNTFileSystem.getLastModifiedTime
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.open ... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getTotal ... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.startsWithLOC
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntry ... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryFlag ...
JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryTime ...
JNI]
[Dynamic-linking native method
java.util.TimeZone.getSystemTimeZoneID
... JNI]
[Dynamic-linking native method
java.util.zip.CRC32.updateBytes ... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryCrc ... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntrySize ...
JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryCSize
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryMethod
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.getEntryBytes
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.freeEntry ... JNI]
[Dynamic-linking native method
java.util.zip.Inflater.initIDs ... JNI]
[Dynamic-linking native method
java.util.zip.Inflater.init ... JNI]
[Dynamic-linking native method
java.util.zip.Inflater.inflateBytes
... JNI]
[Dynamic-linking native method
java.util.zip.ZipFile.read ... JNI]
[Dynamic-linking native method
java.util.zip.Inflater.reset ... JNI]
[Dynamic-linking native method
sun.reflect.NativeMethodAccessorImpl.invoke0
... JNI]
[Dynamic-linking native method
java.lang.Class.isInstance ... JNI]
[Dynamic-linking native method
java.security.AccessController.doPrivileged
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DPipeline.nInit
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DPipeline.nGetAdapterCount
... JNI]
[Dynamic-linking native method
java.lang.System.identityHashCode ... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication.initIDs
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication._setClassLoader
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication._init
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication._runLoop
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication.staticScreen_getScreens
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DPipeline.nGetAdapterOrdinal
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DResourceFactory.nGetContext
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DContext.nSetBlendEnabled
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DContext.nSetDeviceParametersFor2D
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DResourceFactory.nGetMaximumTextureSize
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinTimer._getMinPeriod
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinTimer._getMaxPeriod
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication._submitForLaterInvocation
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinTimer._start
... JNI]
[Dynamic-linking native method
java.lang.Throwable.getStackTraceDepth
... JNI]
[Dynamic-linking native method
java.lang.Throwable.getStackTraceElement
... JNI]
[Dynamic-linking native method
java.io.FileOutputStream.writeBytes
... JNI]
Exception in Application start method
[Dynamic-linking native method
com.sun.glass.ui.win.WinApplication._terminateLoop
... JNI]
[Dynamic-linking native method
com.sun.glass.ui.win.WinTimer._stop
... JNI]
[Dynamic-linking native method
com.sun.prism.d3d.D3DPipeline.nDispose
... JNI]
java.lang.reflect.InvocationTargetException
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at
java.lang.reflect.Method.invoke(Method.java:483)
at
com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:363)
at
com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:303)
at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at
java.lang.reflect.Method.invoke(Method.java:483)
at
sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)
Caused by: java.lang.RuntimeException:
Exception in Application start method
at
com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:875)
at
com.sun.javafx.application.LauncherImpl.lambda$0(LauncherImpl.java:157)
at
com.sun.javafx.application.LauncherImpl$$Lambda$47/895947612.run(Unknown
Source)
at
java.lang.Thread.run(Thread.java:745)
Caused by:
java.lang.UnsatisfiedLinkError:
com.sun.glass.ui.win.WinApplication._getHighContrastTheme()Ljava/lang/String;
at
com.sun.glass.ui.win.WinApplication._getHighContrastTheme(Native
Method)
at
com.sun.glass.ui.win.WinApplication.getHighContrastTheme(WinApplication.java:261)
at
com.sun.javafx.tk.quantum.QuantumToolkit.getThemeName(QuantumToolkit.java:1512)
at
com.sun.javafx.application.PlatformImpl._setPlatformUserAgentStylesheet(PlatformImpl.java:689)
at
com.sun.javafx.application.PlatformImpl.setPlatformUserAgentStylesheet(PlatformImpl.java:545)
at
com.sun.javafx.application.PlatformImpl.setDefaultPlatformUserAgentStylesheet(PlatformImpl.java:509)
at
javafx.scene.control.Control.<clinit>(Control.java:87)
at
net.ess.newTools.HtmlEditor.start(HtmlEditor.java:54)
at
com.sun.javafx.application.LauncherImpl.lambda$6(LauncherImpl.java:821)
at
com.sun.javafx.application.LauncherImpl$$Lambda$50/1113966589.run(Unknown
Source)
at
com.sun.javafx.application.PlatformImpl.lambda$6(PlatformImpl.java:326)
at
com.sun.javafx.application.PlatformImpl$$Lambda$43/2008362258.run(Unknown
Source)
at
com.sun.javafx.application.PlatformImpl.lambda$18(PlatformImpl.java:295)
at
com.sun.javafx.application.PlatformImpl$$Lambda$46/1820470793.run(Unknown
Source)
at
java.security.AccessController.doPrivileged(Native
Method)
at
com.sun.javafx.application.PlatformImpl.lambda$5(PlatformImpl.java:294)
at
com.sun.javafx.application.PlatformImpl$$Lambda$44/760563749.run(Unknown
Source)
at
com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at
com.sun.glass.ui.win.WinApplication._runLoop(Native
Method)
at
com.sun.glass.ui.win.WinApplication.lambda$4(WinApplication.java:100)
at
com.sun.glass.ui.win.WinApplication$$Lambda$36/1622006612.run(Unknown
Source)
... 1 more
Exception running application
net.ess.newTools.HtmlEditor
[Dynamic-linking native method
java.lang.Shutdown.halt0 ... JNI]
On the assumption that the VM is
failing to load some dll, I've tried
numerous means for letting eclipse
know the load library path, including
* passing "-Djava.library.path=" on
the VM's command-line using ,
pointing to the JDK's bin dir, and
the JavaFX2.1 install's bin dir
(where all dlls appear to live)
* setting the LD_LIBRARY_PATH
environment var to both of the above
dirs
* adding both of the above dirs to PATH
* cloning all dlls to the directory
containing the
javafx.application.Application.class
file
to no avail, I seem to be shooting in
the dark (i.e. don't know enough what
I'm doing).
I'd appreciate any advice any of you
can provide to help me get unstuck.
Thanks,
-rjs