| The JavaFX Preview Software Development Kit (SDK) contains libraries and supporting documentation for developing JavaFX applications. This document provides release information about system requirements and known issues regarding the SDK. |
Contents
The JavaFX Preview SDK has been tested on the following platforms and technologies:
Microsoft Windows XP with Service Pack 2 or Windows Vista Home Premium, Business, Ultimate, or Enterprise (certified for 32-bit editions):
- Processor: Intel Pentium 4, Intel Centrino, Intel Xeon, or Intel Core Duo (or compatible)
- Memory: 512 MB of RAM (1 GB recommended)
- Disk space: 128 MB of free disk space
- Java™ SE Development Kit: JDK 6 Update 7(or later). For optimal performance, use Java SE 6 update 10 Beta.
Macintosh OS X 10.5.2+:
- Processor: Multicore Intel
- Memory: 512 MB of RAM (1 GB recommended)
- Disk space: 128 MB of free disk space
- Java SE Development Kit: Java for Mac OS X 10.5, Update 1
You can download and install the JavaFX Preview SDK from the Java Technology downloads page.
- On Windows, The default installation directory is
C:\Program Files\JavaFX\javafx-sdk1.0pre1
- On Mac, The default installation directory is
/System/Library/Frameworks/JavaFX.framework/Versions/1.0pre1
The installation procedure also creates the following links:
/System/Library/Frameworks/JavaFX.framework/Versions/Current
/Library/JavaFX/Home
/usr/bin/javafx
/usr/bin/javafxc
/usr/bin/javafxdoc
In addition to the Java archive (JAR) libraries, the SDK includes documentation and samples that demonstrate the features of the JavaFX Script programming language. For information on accessing the documentation and running the samples, see the instructions in the README file, which is located in the top-level of the SDK directory.
- Rendering artifacts when d3d is turned on might cause repainting problems
Description: JavaFX applications using effects (as well as Java applications using the effects library) might run into repainting problems on Windows with JDK 6 if a display mode change event occurs while the application is running. Such an event could be caused by another application entering or exiting the full screen mode, or a screen saver turning on.
Workaround: Disable the Direct3D pipeline by setting this property:
-Dsun.java2d.d3d=false
Note: Performance might degrade in this case.
- The
Application class is not complete
Description: javafx.application.Application is intended to abstract the application container in such a way that it can be used across JavaFX devices and deployment mechanisms, including desktop applications, applets, and mobile devices. It will enable a client to set the content using the stage attribute without worrying about what top-level container is hosting the content.
This class is incomplete for the Preview release and works only for applets. The lifecycle methods are not yet implemented.
Workaround: For desktop applications, use an appropriate top-level class, such as Frame, Dialog, or Window.
- Multiple classes for top-level windows
Description: The Preview release contains parallel classes for the top-level containers:
javafx.application.Frame
javafx.application.Dialog
javafx.application.Window
javafx.ext.swing.SwingFrame
javafx.ext.swing.SwingDialog
javafx.ext.swing.SwingWindow
The Preview release includes the first phase of migrating the runtime to use a more Node-centric architecture; thus, this release includes the javafx.application top-level classes, which support setting content in terms of a "stage" containing scene graph nodes. In the next phase, the GUI component classes will be migrated to be subclasses of Node. Layout support for scene graph nodes will also be included. Until the next phase is complete, temporary top-level classes in javafx.ext.swing have been included to minimize the work required to use the javafx.ext.swing container classes to layout components.
Workaround: Code written for earlier versions of the SDK needs to change the names of the top-level classes from Frame, Dialog, and Window to SwingFrame, SwingDialog, and SwingWindow, respectively.
However, if you are writing primarily Node-based applications, it is strongly recommended to use the javafx.application top-level classes that will exist going forward.
- AccessControlException when starting JavaFX Script applet
Description: Users may see an AccessControlException when trying to run the appletviewer command on Mac.
Workaround: If you are using the javafx.ext.swing.* classes in your applet, use the following command:
appletviewer -J-Djava.security.policy=../applet.policy Main.html
If you are using the javafx.application.* classes, this workaround is not available.
- Text bound to a node does not display immediately
Description: The following example should add a new text node each time the user clicks on the rectangle. However, the first time the rectangle is clicked, a text node is added, but does not display. When the user clicks the rectangle again, a second node is added, and the first node is displayed.
import javafx.application.Frame;
import javafx.application.Stage;
import javafx.scene.geometry.Rectangle;
import javafx.scene.text.Text;
import javafx.scene.paint.Color;
import javafx.input.MouseEvent;
import javafx.scene.Node;
import java.lang.System;
var count: Integer = 0;
var nodes: Node[] = [Rectangle {
x: 50
y: 70
width: 70
height: 50
fill: Color.BLUE
onMouseClicked: function(e: MouseEvent) {
count++;
insert Text {
content: "Click count: {count}"
x: 30
y: 30 + count * 10
} into nodes;
System.out.println("Text node {count} added");
}
}];
var f: Frame = Frame {
stage: Stage {
content: bind nodes
}
width: 400
height: 400
visible: true
}
|
Workaround: Use SwingFrame/Canvas instead of Frame/Stage for the program to work correctly.
- Window repainting stops
Description: In a window with windowStyle set to TRANSPARENT, changing the Stage fill to a solid color stops all repainting.
Workaround: Use windowStyle UNDECORATED instead.
- Media requirements
Description: Systems lacking a sound card or a built-in sound chip and the appropriate audio drivers may see a MediaUnsupportedException when some media types are played.
Workaround: None
- Animation performance issue on old video card and Windows Vista
Description: If you have an old video card (such as Nvidia Riva TNT2) on Windows Vista, and the standard video driver is installed from the operating system, animation is very slow, about one frame per second. The reason for this is because JavaFX animation is unable to determine the refresh rate.
Workaround: Add the following VM options to the javafx command line or the NetBeans project properties. In the NetBeans IDE, right-click the project name in the Projects pane and choose Properties > Run. Enter the following text in the VM Options text field and click OK.
-Dcom.sun.scenario.animation.pulse=60
- JavaFX tools (javafxc and javafx) do not work out of the box when used from the command line on Mac OS X
Description: JavaFX applications that are compiled and run from the command line fail. This is a known issue in Java for Mac OS X 10.5, Update 1.
Workaround: Use NetBeans IDE to compile and run JavaFX applications. If you need to compile and run a JavaFX application from the command line, add the following to your .bash_profile:
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
|
|