Permalänk

Skapa exekverbara filer med java

Har programmerat Java ett tag nu, dock inte så überavancerat, men jag har ju förstått det där med plattformsoberoende och sådant. Man skapar ju .jar-filer när man exporterar program, och detta funkar utmärkt, men ändå är det en sak som förbryllar mig.

Det finns vissa java-program (t.ex. azureus) som (under Windows) inte kör någon .jar-fil, utan en .exe. Förmodligen för att den skall kunna köras som en service i Windows? Rätta mig om jag har fel.

Är det möjligt att låta Java-kompilatorn eller JVM kompilera om bytekoden till den aktuella plattformen? t.ex. så att man skriver ett program i Java, och för att t.ex. minska delays och sådant optimerar koden redan innan den körs? Eller är det det som JIT gör?

Nu till saken, hur skapar jag en .exe fil i Java, och vad blir det då för för- och nackdelar?

/Chris

EDIT: GOD JUL OCH GOTT NYTT ÅR ALLA GOA GLADA!

Visa signatur

Moderkort: Asus Z97-PRO CPU: Intel Core i7 4790K GPU: MSI GTX 980 Gaming
RAM: A-Data 2x8GB DDR3 Chassi: NZXT H400W

Permalänk
Medlem

Det finns lite olika varianter. Den här sidan verkar beskriva dom olika möjligheterna ganska bra:
http://www.excelsior-usa.com/articles/java-to-exe.html

Permalänk
Medlem

Re: Skapa exekverbara filer med java

Citat:

Ursprungligen inskrivet av Christhebalrog
Har programmerat Java ett tag nu, dock inte så überavancerat, men jag har ju förstått det där med plattformsoberoende och sådant. Man skapar ju .jar-filer när man exporterar program, och detta funkar utmärkt, men ändå är det en sak som förbryllar mig.

Det finns vissa java-program (t.ex. azureus) som (under Windows) inte kör någon .jar-fil, utan en .exe. Förmodligen för att den skall kunna köras som en service i Windows? Rätta mig om jag har fel.

Är det möjligt att låta Java-kompilatorn eller JVM kompilera om bytekoden till den aktuella plattformen? t.ex. så att man skriver ett program i Java, och för att t.ex. minska delays och sådant optimerar koden redan innan den körs? Eller är det det som JIT gör?

Nu till saken, hur skapar jag en .exe fil i Java, och vad blir det då för för- och nackdelar?

/Chris

EDIT: GOD JUL OCH GOTT NYTT ÅR ALLA GOA GLADA!

wrapper.sourceforge.net
är vad man använder när man vill köra saker som "servicar" oavsett OS.... att göra en java-applikation till en exe är som att skicka med Word i varje dokument, inte så praktiskt och riskerar att klabba mellan versioner på samma OS....

Permalänk
Medlem

Re: Skapa exekverbara filer med java

Citat:

Nu till saken, hur skapar jag en .exe fil i Java, och vad blir det då för för- och nackdelar?

Att en exe-fil inte är plattformsoberoende. Tycker det är mycket bättre att ha en jar-fil, en fil för alla plattformar dvs.

Jag tycker du bör tänka efter både en och två gånger eftersom att du totalt bryter mot hela idén med Java när du gör en exe-fil. Läs det som står skriver på sidan som vb länkade till.

Här är ett program som fixar biffen åt dig... Vill egentligen inte ge dig länken
http://www.ej-technologies.com/products/exe4j/overview.html

Permalänk

det som dessa program verkar göra, är att göra en koll om JRE är installerat, och sen starta java-programmet.

Jag undrade mer om det fanns ett prog. som t.ex. läste java-filerna (eller JAR-filerna) som JVM och därefter konverterade till ett annat språk som sedan kan kompileras för aktuell plattform, och därefter köras. Ungefär såhär:

Java --> bytekod --> JVM --> kompilering --> Exekverbar fil

Visa signatur

Moderkort: Asus Z97-PRO CPU: Intel Core i7 4790K GPU: MSI GTX 980 Gaming
RAM: A-Data 2x8GB DDR3 Chassi: NZXT H400W