What is DEMUX Framework?
DEMUX Framework is a Java development framework that allows developers to build modular applications for desktop, web and mobile devices. It is based on OSGI, the de-facto standard for Java modularization, and is build around MVC pattern which enforces strict separation of concerns between business logic and presentation.
Applications built on top od DEMUX Framework can run on desktop computers, mobile devices and web with little or no modification. Modular architecture enable reuse of components with same functionality across multiple applications.
Why should I use it?
Using pre-built modules can dramatically reduce time needed to develop your application. Instead of writing code for same operations, you can simply drop in existing module, customize it if needed, and have required functionality ready. Furthermore, you can develop your own reusable modules for your own needs or for sharing with others.
Also, if you plan to target more then one market (e.g. desktop and mobile), you can dramatically reduce time-to-market using DEMUX Framework.
Why is it called DEMUX?
DEMUX is a often used in electronics as a designation for Demultiplexer. It is an electronic circuit which takes one input, and selects one of multiple outputs. Similar to this, with DEMUX framework, you take one source code, and produce binaries for mulitple platforms.
My application hangs on Mac OS X. I only get splash screen
This is a well known bug on Mac OS X. When AWT splash screen is active, it prevent JavaFX from starting properly. To bypass this, you need to supress AWT splash screen. Change the configuration of Maven Exec plugin to use the following arguments following:
<arguments> <argument>-cp</argument> <argument>demux-desktop-jfx.jar:osgi.jar</argument> <argument>com.javafx.main.Main</argument> </arguments>