[java]Możliwość uruchamiania aplikacji poza NetBeansem


#1

Witam,

skończyłem właśnie jedną prostą gierkę i chciałbym odpalić ją poza NetBeansem na innym komputerze. Co zrobić żeby to było możliwe?

Pozdrawiam.


(Grzelix) #2

najprościej to z konsoli:

wpisać java program_name

oczywiście na komputerze musi być maszyna wirtualna javy.


#3

Problem w tym że jak klikam w NetBeans "build project",a potem przechodzę do eksploratora plików, wchodzę do folderu z projektem, potem do "dist" mam tam plik jar. Niestety jak klikam na niego nic się nie dzieje :confused:


(Grzelix) #4

http://download.oracle.com/javase/tutor ... r/run.html


#5

Nie działa w dlaszym ciągu :confused:

Znalazłem coś takiego:

http://lwjgl.org/wiki/index.php?title=S ... h_NetBeans

pkt. 5 notka druga:

Wszystko byłoby fajnie.... grybym wiedział co wstawić w miejsce "" oraz "".

Ktoś ma pojęcie?


(Grzelix) #6
  1. Masz ustawioną zmienną środowiskową dla programu java ?

Jak wpiszesz

java

w konsoli to masz jakąś odpowiedź.

  1. W miejsce name to oczywiście nazwa utworzonego pliku jar natomiast path to ścieżka do bibliotek z których korzysta program (zapewne w przypadku jakiś zewnętrznych bibliotek) jeśli używasz standardowe biblioteki to możesz spróbować pominąć ten parametr

(Razi) #7

Pliki .jar powinny uruchamiać się normalnie dwuklikiem, jeśli JRE jest prawidłowo zainstalowane (na dowolnym systemie).

Możesz utworzyć dla windowsa exe (co IMO jest poniekąd głupotą, jeśli do tego exeka wrzucisz całego jara i zamiast klientowi dostarczyć zarówno exe i jar dasz sam exe tracąc na przenośności) programem np. launch4j.


#8

problem rozwiązany. Wstarczyło to:

java -Djava.library.path=sciezka_do_blibiotek -jar sciezka_do_pliku_jar.jar

Wklepać do konsoli (start + R). Był z tym problem ponieważ aplikacje w LWJGL potrzebują innych bibliotek (to się chyba native libraries zwie).

Podczas uruchamiania pliku *.jar trzeba było te biblioteki wskazać.

Wystarczy zrobić plik *.bat i wklepać tam ten kod co dałem powyżej. Wtedy po kliknięciu na ten plik bat, uruchomi się konsola i automatycznie odpali naszego jar'a.

Pozostaje tylko pytanie: czy da się jakoś pominąć wykorzystanie do uruchomienia pliku *.jar konsoli? Raczej się da, gdyż gra minecraft też została stworzona w LWJGL i uruchamia się bez konsoli (przez *.exe).

Pozdrawiam, mam nadzieję za pomogłem mającym ten problem :slight_smile:


(Razi) #9

Teoretycznie dobrze zbudowany .jar z odpowiednim manifestem i bibliotekami dll/so w odpowiednim folderze powinien działać bez pliku bat. Możesz też do tego zbudować plik exe tym programem co ci podałem i w nim dopisać ścieżkę względną do bibliotek natywnych.

Co do dystrybucji na Linuksa to można założyć że user debilem nie jest i wystarczy notka że ma zainstalować lwjgl z repozytoriów (chyba w każdym distrsze jest w repozytorium), ale zamieszczenie binarek so nie zaszkodzi.