Click here to Skip to main content
15,032,963 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more:
hi, i want to create a desktop app which is related to project management and some image processing , the problem is i want to run it on all Major platform Windows , Mac & Linux
I don't want to create 3 different setup , i just want to create a single setup. i am using windows for development.
i think java may be helpful and also i want to save some data by this app in sql, locally or on the web.
Thank you.

1 solution

Java is multi-platform by definition, unless you link your application with something platform-specific, using JNI.

However, the OS have they specific installation standards, formats of installation packages (like MSI, Apple .PKG, etc.), binding to platform-specific API, and so on. They are not multi-platform by definition, so there is nothing you can do about it.

The question is: if this is just an application, why would you need this platform installer at all? They make sense only of you need to modify registry, environment, add files to different directories. The major reason for having formal installation is to have automatic clean uninstallation. If this is just a Java application, I would assume it does not do anything like that. You can just copy files and remove them when the user decides to remove the application, which you can write in Java.

Vipin Sharma 15-Apr-14 3:50am
so if i want to deploy my project then it runs perfectly on those 3 OS easily , i just have to distribute the deploy file ?
Sergey Alexandrovich Kryukov 15-Apr-14 11:01am
It depends on what your application is. If it does not any contamination to the system (registry, environment), you can just provide an application to copy (or not). In modern jargon, it's called "portable application". The portability is limited by some limitation: Java should be installed, etc.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900