Can't create JavaFX project within Netbeans on Linux - linux

so I'm struggling with this issue quite a while now. I want to create a new JavaFX project within Netbeans, but I don't have the option to choose JavaFX from the list. Since I have the most recent java version, JavaFX should be included in the SDK right? I also looked up if I have the jfxrt.jar in the directory /usr/local/jdk1.8.0_111/jre/lib/ext and I do. So how comes that I can't create a regular JavaFX project? Am I missing out on something?
$ java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
Thank you in advance!

For those who are also having the same problem (can't find JAVAFX plugin(s) in the 'Installed' tab, see #Fabian comment answer):
Go to 'Settings' tab (in Tools -> Plugins)
Check both boxes 'Certified Plugins' and 'Netbeans Distribution'.
Go to 'Available Plugins' and press 'Check for Newest'.
You should see JAVAFX plugin(s).
Install them and restart your IDE.

Related

Update Android Studio 2.0 JDK?

I just installed Android Studio 2.0 on OSX 10.11.4. I get this error:
Running on a JDK8 version affected by drag and drop issues (1.8.0_60
through 1.8.0_76). See IDEA-146691 for details, and consider using a
JDK outside the problematic range.
IDEA-146691 did not help me.
Isn't the JDK bundled with Jetbrains IDEs? How am I supposed to change it?
My OSX Java is 8 Version 77.
Solution:
My fault: Java version in the OSX Settings is NOT the JDK version.
Just download the new JDK as Alessio answered below.
I got the same error. Simply download the last release (1.8.0_77) from Java Official and the error will disappear. Probably you don't have the last version if the error still shows up, check the version via terminal javac -version
See IDEA-146691 Drag and Drop (to move file) Dialog frozen - escape exits for details, and consider using a JDK outside the problematic range.
See Issue 201716: Buttons in move dialog not working

Eclipse Luna Not Working (Kali Linux)

Every time go to run the Linux Version of Eclipse Luna SR2, it just stops at the little Splash Screen (The window that comes up before you select your work space) and it just stays like that for about 30 seconds, and then closes. Any help please?
It generates this error log which is found Here
New Answer: This is a known bug and a workaround that has fixed the issue in at least one case is to run
export SWT_GTK3=0
before starting Eclipse. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=430736 for more information. If this workaround does not fix your issue make sure GTK3 is installed and upgrade glibc to at least version 2.14 to ensure Eclipse uses it. Apparently when Eclipse detects an older glibc it tries to use GTK2. If none of these suggestions fix your issue you should submit a bug report at http://bugreport.java.com/bugreport/crash.jsp to work it out with the Eclipse development team and also to help inform other people about it.
#ElectroMan - This got too long for a comment. Yes, the error log says the same thing. That means you are running Java 6, "JRE version: 6.0_34-b34" according to the log. I suggest you try running Java 8 or at least Java 7. Java SE 8u40 is the current release from Oracle and it can be downloaded for 64 bit Linux from a link on http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html. It is best to use the latest Oracle release and get away from the OpenJDK version, especially one that is two major releases outdated. However, if you opt for Java 7 its final release is available at http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html. You should be able to install either in a non-default location and keep OpenJDK 1.6.0_34 as your main version of Java on your platform. Eclipse can be configured to use Java 8 or 7 after it is installed by project or as its default for all new projects, but the main thing is to tell it to use Java 8 or 7 when it runs, since it is a Java application. Some instructions for this are at http://www.cs.umd.edu/eclipse/install_java8_luna.html. One of the main reasons for upgrading from Eclipse Kepler to Luna is to get built-in Java 8 support. Another option is to follow the instructions in the error log and file a bug report at http://www.cs.umd.edu/eclipse/install_java8_luna.html and wait for a reply. Or maybe there is already a new Luna update and you could try it.

jdk1.7's javac can't find javafx jar without -cp option

I've read several questions on this site and elsewhere that indicate that when Oracle JDK7 is installed, it should not be necessary to specify the classpath to jfxrt.jar when the JDK is installed correctly. Unfortunately, my installation does not seem to be correct, but I cannot figure out what is wrong.
I used the correct RPM for my Red Hat Enterprise Linux 6.2 Server and I'm able to build JavaFX apps in Eclipse when I added the jfxrt.jar to the External Jars. But when trying to compile and run from the command line, it does not find JavaFX classes unless I specify the -cp option to javac and java. The server was originally using openjdk-1.6, but I used alternatives to configure javac and java to point to the newly installed JDK. It looks like that is working fine, except for this issue.
I found that the same problem plagued me when trying to run the JavaFX Exporter. I was trying to export a project that runs fine in Eclipse. But it could not find the JavaFX classes when trying to run. And I haven't worked out how to tell the exporter where the jfxrt.jar file is located.
For reference, the jfxrt.jar is located at /usr/java/jdk1.7.0_21/jre/lib/jfxtr.jar on my system.
when Oracle JDK7 is installed, it should not be necessary to specify the classpath to jfxrt.jar when the JDK is installed correctly.
That is not true.
If you want to compile and run a JavaFX application in Java 7 (u21) and you are not using the JavaFX packaging tools, you need to add jfxrt.jar to your classpath.
See Compile code using JavaFX 2.0 (using command line) for samples of setting the JavaFX classpath for compiling (with javac) and running (with java) a JavaFX 2 application from the command line.
Some IDEs or IDE extensions are aware of this and will automatically add jfxrt.jar to your classpath (e.g. the e(fx)clipse plugin or the NetBeans JavaFX project type).
Some 3rd party tools such as the JavaFX Maven Plugin or the JavaFX Gradle Plugin also package JavaFX applications so that you don't need to add jfxrt.jar to your classpath.
For Eclipse development, use of the e(fx)clipse plugin is recommended, as it takes care of classpath issues (as well as providing other useful capabilities for JavaFX developers).
For Java 8, jfxrt.jar is on the default classpath, so you don't need to explicitly set your classpath to use JavaFX with tools like javac.exe or java.exe for that Java version.
OpenJdk7 does not include jfxrt.jar. Use Oracle Jdk7 instead will help.

How to make a executable file of JavaFX 2.0 project?

I want to make a executable file of my project which I made in JavaFX 2.0. Can anyone help me with this?
The JavaFX team implemented support for this in the tools bundled with the JavaFX 2.2 SDK (included in Java7 from update 6). The JavaFX packaging toolset for packaging executables is documented in self-contained application section of the JavaFX deployment guide.
See RT-19446 "Add ability to co-bundle Java + JavaFX + App into a single native executable" for more information (anybody can sign up to view the jira).
3rd party tools such as the JavaFX maven plugin or the JavaFX gradle plugin, streamline integration of building native JavaFX executables using common build systems.
The JavaFX packaging tools can also be used to natively package any Java application, not just JavaFX applications. For example, a Swing application, as demonstrated by this shell script for packaging a Swing application using JavaFX on OS X.
If you want to do the packaging for the 2.0 or 2.1 versions of JavaFX (not JavaFX 2.2+), then you should review Packaging JavaFX Applications as Native Installers.
Javafx 2+ can now easily be packaged as a native exe (with an added payload, which the current JRE), the up to date (as in the end of 2012) article is here: http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm
Out of curiosity I created an executable on Windows (copy-pasting the netbeans build code into netbeans' build.xml) from the canvas and the hello world examples: the app is around 20k, the executable/launcher is around 80k and the added runtime is 138mb.
By the way if you have an older netbeans install (installed with a pre 1.7jdk) you may have to update it or edit its netbeans.conf fixing the "netbeans_jdkhome" path, otherwise the bundled executable's packaging may fail.
There are several tools to generate a customized exe launcher for your Java application.
I have good experience with Winrun4J: http://winrun4j.sourceforge.net/
but you will always need an installed Java/JavaFX Runtime even if you have an .exe that contains all your code.

Building JavaFX 2.0 App on Mac, deploying on Windows

What are your strategies for building your JavaFX application on Mac and deploying on Windows ? I am currently having issues with how to bundle up my application so that it is double clickable on both platforms. I have tried using the ant-tools, but the jar file produced complain that JavaFX 2.1 needs to be installed on my Mac (how can I place the JavaFX 2.1 DP distribution so that the double-clickable Jar knows where to find it ?)
On the Windows side, Java7u3 is installed, which "comes with" Java FX 2.0.3. I need for the application to be able to execute as a double clickable JAR file here as well.
Any suggestions as to how this is set up ? I am using Maven to build my project. The more details you can provide the better.
Since 2.1 release the only (official) way to install JavaFX on Mac is cobundle installation with Java 7u4 (opposite to developers preview versions being published in zip archives).
If JavaFX on Mac was installed this way then jar with JavaFX can be run by double-click.
On Windows same jar by double-click will ask to install "JavaFX runtime" and will start if one is present already.
N.B.: in 2.2 release Mac/Linux would start to support jnlp (WebStart) run (already supported on Windows) which may suit you even better.

Resources