How to embebed javafx 2.1 in an installation package - exe

I need to distribute a javafx 2.1 application but the client doesn't want to be asked if he wants to install javafx 2.1. It should be automatically installed. Does someone know how to wrap it in a dmg and in an exe package??
Thank you very much in advance.

There is a tutorial here: http://fxexperience.com/2012/03/packaging-javafx-applications-as-native/
and there (although for 2.2): https://blogs.oracle.com/talkingjavadeployment/entry/native_packaging_for_javafx

Finally I got it !!!!
I'm going to explain how I got it from my perspective. Sorry if it sounds a little bit dummy but I'm not used to build desktop applications and with a new technology as javafx is even more difficult for me.
Download the latest version of the jdk (in this case the 7.0 one).
Follow the steps from the tutorial and include your .jar and the jfxrt.jar
As a main class I set com.javafx.main.Main
Create the application and now, the most important part:
Once the application has been created, open it (right click on the app and "show package content". Go to the folder: Content/Resources/Java.
Do the same operation with the vm: go to /Java/JavaVirtualMachines and right click on the 1.7.0.jdk to open the Contents folder.
Copy ALL the .jar and .dylib from the jdk to the java resources in your application
Run the application and it will work :)

Related

eclipse and Java ME, "you must add at least one configuration"

I need to make an app for my cheap phone, and I downloaded eclipse, java sdk, and java me sdk for it. I can't create a simple Java ME project, because when I click File->New->Java ME Project and type name, it says
you must add at least one configuration
Tutorial like this http://www.wideskills.com/j2me/configure-java-me-in-eclipse says to go to Window->Preferences->Java ME->Device Management->Manual Install and provide the path to the Java ME sdk, C:\Program Files\Java_ME_platform_SDK_8.3 in my case. Except it finds nothing for me.
Try to install the Sun Java Wireless Toolkit and give its path to download! It worked for me. Or add the MTJ (Mobile Tools for Java) plugin and we will have an environment ready to create Java ME applications.
To do this, go to the menu Help > Install new software and add the URL: http://download.eclipse.org/mtj/updates/1.1.2/stable

JavaFX missing from JDK 1.7/1.8 in Linux?

I have a problem that allegedly isn't possible, so I'm having a heck of a time finding an answer.
I have the latest version of NetBeans 7.4, running on fully-updated Fedora 20 x64. Officially, this can work with JavaFX. Period. I have both the JDK from the repo (1.7.something) and the very latest version I could find (1.8.0). Officially, these have JavaFX with them. Period.
If I try to create a new JavaFX project, it has this to say:
Failed to automatically set-up a JavaFX Platform.
Please go to Platform Manager, create a non-default Java SE platform, then go to the JavaFX tab,
enable JavaFX and fill in the paths to valid JavaFX SDK and JavaFX Runtime.
Note: JavaFX SDK can be downloaded from JavaFX website.
Well alright, I'm used to things getting confused, I think I can fix this. Go create a new platform, and... there's no "JavaFX" tab. It took a bit of research to even find out what it was talking about, and in the process I discovered that the tab has actually been removed from 7.4. Because NetBeans 7.4 will absolutely, definitely recognize JavaFX automatically. Period.
Going to the actual JavaFX site tells me, as expected, that it's bundled with the Java SE 7 JDK I already have. Period.
Since the end result I'm after could technically be achieved by integrating one JavaFX component into my Swing application, I attempted that, but NetBeans still can not find anything related to JavaFX and therefore yells at me if I try to import such a thing.
So, given that things that are supposed to just plain work just plain aren't... where can I go from here?
Currently in Debian and Ubuntu (probably others) JavaFX is a separate package from the OpenJDK (openjdk-8-jdk) and so needs to be installed:
sudo apt-get install libopenjfx-java libopenjfx-java-doc
Notable issue (this issue does not impact a Maven, JavaFX application so if that is your preferred build method then ignore the following issue):
If you try to create a new project:
Categories > JavaFX
Project > JavaFXApplication
You'll get:
Internal error. Missing resources [/resources/web-files/javafx-loading-100x100.gif]
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:1465: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:3093: The following error occurred while executing this line:
/home/ken/NetBeansProjects/vestFxReports/nbproject/jfx-impl.xml:2055: Error: -includedt requires the java deployment toolkit, which is not included in this distribution
BUILD FAILED (total time: 1 second)
To fix the above error [following steps are derived from here: http://hongouru.blogspot.com.uy/2015/09/solved-error-building-new-project-using.html]:
Switch to the files tab (usually you're on the Project tab).
Expand the node for your project >
expand the nbproject node > open the "project.properties" file.
Find the line javafx.deploy.includeDT=true and change true to false.
Now you can create and run a JavaFX application, on OpenJDK.
Next steps, although beyond the issue at hand you'll probably at some point want to download the JavaFX scene builder: http://www.oracle.com/technetwork/java/javafxscenebuilder-1x-archive-2199384.html
Apparently, the issue is indeed a discrepancy between the open-source OpenJDK provided by most Linux distributions, and the proprietary Oracle JDK. Ironically, this is a well-known issue, but you have to specifically search for it to find it, and by then you already know.
The solution is to download the official Oracle JDK, and if necessary create the matching platform in NetBeans (located under /usr/java/jdk... at this moment). It should work perfectly fine after that.
Perhaps the official documentation
https://netbeans.org/kb/docs/java/nb_fx_screencast.html
https://netbeans.org/kb/72/java/javafx-setup.html
may help you to set it up

Selected location does not represent a valid JavaFX Scene Builder installation

I have Netbeans 7.3 Beta 2 with latest Java 7 JDK on 32 bits, on Windows 8 Pro.
Problem: I removed Scene Builder 1.1 b07 and Installed the latest one b12, but now I can't set "Scene Builder Home" in Netbeans.
I get the following error:
"Selected location does not represent a valid JavaFX Scene Builder installation"
I tried pointing to all possible folders (Scene B. Folder, child folders, Oracle folder etc) (I know that it shouldn't be necessary).
The version before was OK and Netbeans detected it automatically.
I had Scene Builder 1.1 b07 before.
Now it doesn't want to be added into "Scene Builder Home" from Netbeans Options->Java->JavaFX.
That's quite annoying, because now I have to manually open each FXML from the source folder. Annoying.
I searched NetBeans bugs, but I didn't find anything. I wanted to add a new one, but I couldn't. Maybe because I already have 2 reported bugs.
Any suggestions?
I didn't remove and install NetBeans again, because I don't want to reimport the projects and configure it again just for this.
Edit:
I managed to report the bug. I had to delete the cookies from netbeans.org and log in again in order to be able to use the "report a bug" page. Let's hope for a quick fix. http://netbeans.org/bugzilla/show_bug.cgi?id=223994
It works flawlessly with the latest NetBeans 7.4, Java 7 JDK and SceneBuilder.
I assume it was a bug that was fixed. SceneBuilder 1.1 is a stable release now, which wasn't at that time, so this could be the explanation.
You Can use it outside of netbeans, I faced the same Error in Ubuntu linux. according to this bug you have to wait antil they fix it.
right now just use it outside of netbeans

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.

Problems creating a Java Mobile Application project

I have installed the Netbeans 6.7 IDE with Java ME included, but cannot create a Mobile Application project from the Java ME category. When I select the project type the wizard stops at "Finding Feature" with the message:
Not all requested modules can be enabled:
[StandardModule:org.netbeans.modules.mobility.end2end.kig jarFile:C:\Program Files\NetBeans 6.7\mobility8\modules\org-netbeans-modules-mobility-end2end-kit.jar.
I am attempting to run this on Vista Home Premium. I have tried to run the IDE as Administrator with no luck.
I am at a loss for where to go next as I cannot seem to find any information regarding this issue. Even if you don't have the solution any insight into this error message would be helpful.
I am unable so far to get the project running via the Netbeans IDE install. I have, for the time being, installed the Java ME SDK which includes a very stripped down version of the Netbeans IDE for mobile development.
I originally had some issues starting the SDK as well on Vista. The IDE reported that it could not connect to the device manager on localhost. After some searching I found this link: Java ME SDK Startup Problem which suggests changing the hosts file localhost entry from IPv6 to IPv4. The fix worked perfectly and I can now compile and run code in the emulator.
This is not an optimal solution as the SDK does not include the visual design tools, however I am able to get a basic project going in the mean time.
I have given up on the 6.7 version and have instead located and installed 6.5.1. This previous version has been working just fine and seems to do everything I need.
I ran into the exact same error today while installing NB 6.8 beta. To resolve it we need to install two plugins:
Java Web Applications (as mentioned by Ali above) and
Sun Java System Web Server 7.0
Note that these two are part of the Category called "Java Web and EE" hence the confusion that we need to install Glassfish App Server. But we need these two plugins because they are required for debugging using breakpoints in emulator. Netbeans runs a web server when we do breakpoint based debugging.
Also note that the Java Web applications needs SOAP Web Services and JavaScript Debugger plugins to run and so these plugins are also installed when you try to install it.
You also need to install "Java Web Applications" plugin.
Tools->Plugins->Available Plugins
If the module is present, you should try unzipping it to check its content makes sense.
You should also be able to rebuild it from Netbeans sources.
You can also try to figure out why this happens by debugging the module loader inside Netbeans from its sources, using another IDE, presumably the latest version of Netbeans you can find without the issue.
If the module is missing, you might want to get the missing jar file from an installation of a previous version of Netbeans, see if it is compatible.
6.5.1 isn't missing any module.
back in version 5.5, the mobility module had to be downloaded and installed separately from the main IDE.
If you want to consider using Eclipse for developing your J2ME app...I've written a post related to that some time ago: here.

Resources