What is the difference between a normal executable jar vs building jar using izpack - izpack

What is the difference between a normal executable jar vs building jar using izpack ?
a) Does it have pre-build configurable wizards?
b) Advantages over the traditional executable jars?
I have build executable jars via eclipse, intellij and it works perfectly in any OS and it is platform independent as well.
Thanks.

As the first line on their official site says...
Easily make installers that work seamlessly on Microsoft Windows™, Linux™, Solaris™ and Mac OS X™.
http://izpack.org/

Related

How to build jar with javafx in openjdk12

I'm trying to build jar for javafx desktop application. Working in IntelijIdea, jdk 12,using javafx12, link javafx sdk, write VM-options in menu run-edit configuration. In IDE all working correctly, my app launches and works. But when I try to create artifact and then build it to jar all brokes. IDE tell, that fx:deploy isn't there. Then my app don't work even in IDE.
I got stuck here.
Can you, please, help, how to build this javafx to launch it without IDE?
p. s. Know, that in jdk8, where javafx still includes, it's easier, but is it really no other way to create independent from IDE javafx, than using jdk8?
Built GUI with swing, created artifact and then built it to jar.
There wasn't problems.
But I don't want swing...
actual error: "Error. Java FX Packager: Can't build artifact - fx:deploy is not available in this JDK.
Will be really greatfull for tricks or tips with that.

Shipping OS-specific binaries in an IntelliJ plugin

I am evaluating the creation of an IntelliJ IDEA plugin which would ship OS-specific binaries, for macOS, Linux and Windows.
The binaries are fairly large, so I don't want to ship binaries for the 3 OS in the same plugin archive. Is it possible to create OS-specific zip archives for an IntelliJ plugin?
It's not possible to make 3 different binaries for the one plugin.
Different approaches you can take:
3 different plugins. Shared code can be put in a different code module
The plugin downloads the binary upon startup from a private server (ftp / nexus)
Install the binaries separately, and have the plugin find the binaries via an environment variable
Good luck!

UiAutomator 2.0 and Eclipse

Is there any way to compile UiAutomator 2.0 with Eclipse and Ant?
I have added the android.jar and uitautomator.jar files from Android-23 but to no avail. Eclipse still does not see UiAutomator 2.0 specific methods like UiObject2.
I have also attempted to build a .jar file with Ant in Gradle which generates the required .jar file but only works for UiAutomator 1.0. I used the method detailed here.
I know Android now officially only supports Android Studio+Gradle now but my setup requires the usage of a standalone uiautomator.jar file that Ant builds, which is not supported (at least as far as I know) with Android Studio and Gradle.
Will appreciate any push in the right direction.

Intellij IDEA generating html y jnlp for java fx artifact

Why when I'm generating an artifact for a javafx application using Intellij IDEA, besides the .jar, it generates a .html and a .jnlp file?, are those two necessary for the application to work, if not is there a setting I can change in order to don't create those anymore?
Files Required for Various JavaFX Execution Modes
it generates a .html and a .jnlp file?, are those two necessary for the application to work
The files required for deployment depend on the execution mode of your application.
If your application is embedded in a browser (e.g. executes via the Java plugin like a traditional Java applet), then you require all of the .html, .jnlp and .jar files.
If your application is launched from a browser via Webstart using the Java deployment toolkit, then you require all of the .html, .jnlp and .jar files.
If your application is launched via Webstart from a web page via a direct href link to the jnlp file, then you only need the .jnlp and .jar file.
If your application is distributed as a "standalone program" (e.g. "Users launch it using a Java launcher, such as java -jar MyApp.jar, or by double-clicking the application JAR file."), then you only need the .jar file.
If your application is distributed as a "self-contained" application then you need none of the .jnlp, .html or .jar files, as everything required to run your application will be packaged into a native install package (e.g. .rpm, .msi, .deb, .dmg) that you will distribute.
Suggested Approach
As you will be using the "standalone program" form of distribution, you only require the .jar file for distribution and can ignore other files created by the Java packaging tools.
While you could have Idea package your application as a JAR by choosing Build | Build Artifacts | Edit... | + | JAR | From modules with dependencies..., I don't recommend that as you will also need to set a main class in the manifest and will lose some of the functionality of files which are packaged using Idea's "JavaFX Application" packaging type, such as in-built detection that the Java runtime used to launch the application meets minimum requirements to run JavaFX applications and transparent network proxy support.
So instead, just use, unchanged, the Idea artifact packaging configuration that you have already setup. Ignore the .html files and .jnlp files output. Just distribute the .jar file to your users along with instructions on how to launch it either via java -jar MyApp.jar or double-clicking the .jar after a Java runtime has been installed on their machine.
Portable Build Advice
If it is only you developing the project and you are unfamiliar with external build tools such as maven or gradle, then it is (probably) simpler to use the artifact packaging features built into your Idea IDE rather than to learn and use external tools.
If your project might potentially be worked on by other developers or builds are to be produced and tested within a continuous integration system such as Jenkins, I do not recommend relying on IDE specific build systems such as the artifact packager in Idea. Instead, use an external build tool such as maven or gradle. There is a maven plugin and a gradle plugin for JavaFX build.

pjsip using cmake

Has someone compiled pjsip using cmake?
The project does not have a way of using CMake to build the library itself (yet). But you can link to pjproject libs from your CMake project.
Here's a snippet from one of mine that uses pjproject as a dependency:
find_package(PKGCONFIG REQUIRED)
pkg_check_modules(PJSIP libpjproject>=1.14 REQUIRED)
include_directories(${PJSIP_INCLUDE_DIRS})
...
target_link_libraries(your_target ${PJSIP_LIBRARIES})
This requires pkg-config as well, and that pjproject.pc should be in it's default search path, or in directory in $PKG_CONFIG_PATH.
This should work on Linux and OS X.
I just made cmake-based compilation of PJSIP v2.3.
I use this compilation only on Windows platform for now, not tested on linux.
On Linux I recommend use PKG_CONFIG tool to discover PJSIP for your app.
Having peeked at their repository, the project is auto-tools/configure based. You would need to port the build system yourself. Depending on complexity, it is not that hard to accomplish. I have converted many projects to cmake. Maybe the pjsip comunity would welcome an upgrade to their build system, as I see they support multiple platforms like iphone, and windows through visual studio.
If you are using Clion IDE then it can automatically generate cmake file for pjproject. Just import it and it will open a wizard. You’ll need to specify the location of the sources, then select project files and include directories. Clion has the ability to make the cmake file from existing projects. for more help please see this link Clion Documentation