Jak połączyć aplikację Java dla Mac/Windows?

Mam Javę .aplikacja jar, który chcę dystrybuować do moich klientów, którzy są na komputerach Mac lub Windows. Chcę użyć narzędzia, które bierze mój plik jar i zawija go w .dmg i A.wrapper exe dla komputerów Mac i Windows, który robi to po uruchomieniu:

  1. sprawdza, czy JRE jest zainstalowany; jeśli nie, instaluje JRE6 z Oracle. W przeciwnym razie aktualizuje zainstalowane JRE do najnowszej wersji 1.6.wersja X.
  2. tworzy krótki link w menu Start (w Windows) lub folderze Aplikacje (w MacOSX) do mojego zawinięty aplikacji i pozwala mojej aplikacji uruchomić za pomocą powyższego JRE
  3. obsługuje łatwe "odinstalowanie aplikacji" dla systemu Windows. Dla komputerów Mac, po prostu przeciągnij .aplikacja do kosza do usunięcia.

Funkcje opcjonalne:

  1. Obsługa ikon aplikacji niezależnych od platformy
  2. Wsparcie dla automatycznych aktualizacji jar
  3. Wsparcie dla argumentów do JRE podczas uruchamiania my .jar
  4. Wsparcie dla Linuksa (.deb or .rpm)
Author: pathikrit, 2012-05-23

5 answers

Zobacz producent opakowań dla komputerów Mac i zaawansowany Instalator Dla Windows.

Użyłem ich obu do prawie wszystkich wymagań, które wymieniłeś.

Nie używałem ich do automatycznych aktualizacji, ale prawdopodobnie musisz zbudować tę logikę w swojej aplikacji.

Nie oczekuj jednak, że wykonają za Ciebie całą pracę.

Spodziewaj się spędzić sporo czasu na budowaniu instalatora dla każdej platformy.

Jestem pewien, że jest wiele opcje Dla Windows i Linux. zaawansowany Instalator tak się składa, że jest jedynym, z którego korzystałem.

Uważam, że Package Maker jest standardem dla komputerów Mac. Jest całkiem niesamowity i łatwy w użyciu.

Powodzenia!

 8
Author: jahroy,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-26 19:07:34

Badałem to przez jakiś czas, aby móc zainstalować aplikację w Linuksie i Windows. Najlepsze alternatywy jakie znalazłem to -

Informacje jak go używać natywnie znajdziesz w tym blogpost . Ale zainstalowanie go w Linuksie zmusiło mnie do użycia skryptu .sh. Co do Maca moja wiedza jest ograniczona. Mam nadzieję, że to pomoże.

 1
Author: Chan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-26 05:35:57

Zauważ, że jeśli rozwijasz swoją aplikację jako aplikację na platformę netbeans, netbeans stworzy dla Ciebie instalatory wieloplatformowe (w tym dla komputerów mac).

Fakt, że jego aplikacja netbeans ma niewielki wpływ na wygląd i działanie aplikacji, możesz nadal zachowywać się tak samo, jak każda samodzielna aplikacja swing.

Ma to następujące zalety, co moim zdaniem czyni go atrakcyjną opcją: - Platforma krzyżowa - its free - nie wymaga JDK do być zainstalowane przed uruchomieniem Instalatora - integruje proces aktualizacji oprogramowania

 1
Author: brad,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-27 04:43:18

Są już dobre odpowiedzi, ale chyba JavaWebStart należy wspomnieć. Oczywiście nadaje się tylko dla webmasterów, ale po instalacji aplikacja może również działać w trybie offline.

Dostępne są funkcje (Automatyczna aktualizacja, sprawdzanie wersji JVM, ikona pulpitu).

Rzeczy do rozważenia:

  • aby mieć prawa dostępu do aplikacji jak "normalnej", Twoja aplikacja musi być podświetlona.
  • afaik nie możesz wysłać aplikacji na inne sposób niż za pobraniem www.
 1
Author: Black,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-27 13:32:56

Do wdrażania w systemie Windows lubię używać Launch4j do owijania mojego słoika aplikacji i tworzenia natywnego pliku wykonywalnego Windows, który może wykrywać i używać już zainstalowanego JRE lub pozwala Ci spakować swój własny. Jest szybki ,lekki i łatwy w skryptach za pomocą Ant (lub Maven)w ramach procesu budowania.

W połączeniu z tym zazwyczaj używam NSIS do tworzenia instalatora, który wstawia skróty i umożliwia instalację/odinstalowanie/naprawę z Panelu sterowania. Z odrobiną pracy, może to być również skryptowane przez Ant, a także może być zbudowany z platformy Linux.

Te rozwiązania oczywiście nie będą działać dla wdrażania Mac, ale podejrzewam, że będziesz musiał użyć różnych narzędzi dla różnych platform, jeśli chcesz jak najlepszego doświadczenia dla użytkowników końcowych.

 0
Author: wolfcastle,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-26 02:38:38