/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
class => EXE
Fra : Gimmer


Dato : 15-10-02 19:19

Findes der ikke et program som laver en class fil om til exe?
jeg fandt et program som hedder jexepack, men det viker ikke særligt godt!

venlig hilsen Gimmer



 
 
Martin Moller Peders~ (15-10-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 15-10-02 20:13

In <3dac5c12$0$7035$edfadb0f@dspool01.news.tele.dk> "Gimmer" <Gimmer@pc.dk> writes:

>Findes der ikke et program som laver en class fil om til exe?
>jeg fandt et program som hedder jexepack, men det viker ikke særligt godt!

Det vil du ikke. Det er en dum ide.

Mvh
Martin




Jesper Sørensen (15-10-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 15-10-02 20:47

> Det vil du ikke. Det er en dum ide.
>
> Mvh
> Martin

øhhhh! mange større programmer, der er skrevet i java, er da kompileret til
native kode.

JS



Jesper Sørensen (15-10-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 15-10-02 20:55

> Det vil du ikke. Det er en dum ide.
>
> Mvh
> Martin

Det bestemmer han vel selv, Det er ikke altid lige praktisk at skulle sende
hele jre med sit program. Hvis han alligevel skal skrive en installer i
native kode fx til systray-programmer i Windows. Så kunne det godt tænkes at
man ville have sit java-program som native kode også.

mvh
JS



Brian Matzon (15-10-2002)
Kommentar
Fra : Brian Matzon


Dato : 15-10-02 21:04

Martin Moller Pedersen wrote:
> Det vil du ikke. Det er en dum ide.
øhh, aha?

Jeg kan komme i tanke om mange grunde til at kompilere til exe...

Sådan som du får det til at lyde, er det at kompile til exe lige så dumt
som at bruge JNI. To ting der begge kan bruges med fordel, såfremt man
har kontrol over anvendelses platformen.

Prøv: http://www.excelsior-usa.com/jet.html
Prisen er lidt heftig, men det er en af de bedste bud...

/Brian Matzon


Martin Moller Peders~ (15-10-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 15-10-02 22:18

In <3dac7499$0$7024$edfadb0f@dspool01.news.tele.dk> Brian Matzon <brian@matzon.dk> writes:

>Martin Moller Pedersen wrote:
>> Det vil du ikke. Det er en dum ide.
>øhh, aha?

>Jeg kan komme i tanke om mange grunde til at kompilere til exe...

Men de fleste, der spoerger om .class til .exe er ved at goere
noget dumt.

/Martin

>Sådan som du får det til at lyde, er det at kompile til exe lige så dumt
>som at bruge JNI.

JNI er smart, _naar_ det er noedvendigt at bruge ellers ikke.

/Martin


Jesper Sørensen (15-10-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 15-10-02 22:33


"Martin Moller Pedersen" <tusk@daimi.au.dk> wrote in message
news:aoi0lg$96o$1@news.net.uni-c.dk...
> In <3dac7499$0$7024$edfadb0f@dspool01.news.tele.dk> Brian Matzon
<brian@matzon.dk> writes:
>
> >Martin Moller Pedersen wrote:
> >> Det vil du ikke. Det er en dum ide.
> >øhh, aha?
>
> >Jeg kan komme i tanke om mange grunde til at kompilere til exe...
>
> Men de fleste, der spoerger om .class til .exe er ved at goere
> noget dumt.
>
> /Martin
>
> >Sådan som du får det til at lyde, er det at kompile til exe lige så dumt
> >som at bruge JNI.
>
> JNI er smart, _naar_ det er noedvendigt at bruge ellers ikke.
>
> /Martin


Hvorledes distribuerer du dine programmer? Som jar med manifest? Som JRE med
bat-fil?

mvh
JS



Brian Matzon (16-10-2002)
Kommentar
Fra : Brian Matzon


Dato : 16-10-02 06:41

Jesper Sørensen wrote:
> Hvorledes distribuerer du dine programmer? Som jar med manifest? Som JRE med
> bat-fil?
Jeg antager det var et spørgsmål til mig?

Jeg har ikke haft et behov for at lave nogen exe fil endnu, så jeg har
altid distribueret som en jar. Men jeg kan ikke se nogle problemer i at
lave f.eks et spil til windows som en executable (via Excelsior JET
*Pro*) som bare skal køres (ikke JRE + bat fil, kun exe).

/Brian Matzon


Jesper Sørensen (16-10-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 16-10-02 13:07


"Brian Matzon" <brian@matzon.dk> wrote in message
news:3dacfba9$0$32580$edfadb0f@dspool01.news.tele.dk...
> Jesper Sørensen wrote:
> > Hvorledes distribuerer du dine programmer? Som jar med manifest? Som JRE
med
> > bat-fil?
> Jeg antager det var et spørgsmål til mig?
>
> Jeg har ikke haft et behov for at lave nogen exe fil endnu, så jeg har
> altid distribueret som en jar. Men jeg kan ikke se nogle problemer i at
> lave f.eks et spil til windows som en executable (via Excelsior JET
> *Pro*) som bare skal køres (ikke JRE + bat fil, kun exe).
>
> /Brian Matzon
>

Det var nu også til Martin, men jeg takker alligevel for svaret :)

JS



Martin Moller Peders~ (16-10-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 16-10-02 17:27

In <aoi1fu$bku$1@eising.k-net.dk> "Jesper Sørensen" <m_burns@NOkampsax.k-net.dk> writes:

>Hvorledes distribuerer du dine programmer? Som jar med manifest? Som JRE med
>bat-fil?

InstallShield from zero G ( http://www.zerog.com ) er meget godt til indpakning af
..class med og uden en jre og med en installer.

Det kan lave flere versioner f.x. med og uden jre og til flere platforme.

Furthurnet er et godt eksempel.
http://www.furthurnet.com/downloadarea/beta.html

Mvh
Martin




Brian Matzon (15-10-2002)
Kommentar
Fra : Brian Matzon


Dato : 15-10-02 22:42

Martin Moller Pedersen wrote:
> In <3dac7499$0$7024$edfadb0f@dspool01.news.tele.dk> Brian Matzon <brian@matzon.dk> writes:
> Men de fleste, der spoerger om .class til .exe er ved at goere
> noget dumt.
heh, true... true


> JNI er smart, _naar_ det er noedvendigt at bruge ellers ikke.
Nja, ikke helt - i *mange* tilfælde vil jeg fraråde det - men jeg har
lige haft et specifikt tilfælde hvor det ikke pinedød var nødvendigt at
bruge JNI, men blev den bedre løsning.

I dette tilfælde er der tale om et OpenGL/OpenAL/Input/VectorMath
library - hvor man måske kan klare sig med J3D, men hvor vores (ikke
alene om det) implementation er *meeeget* bedre (perfomance wise, as in
run-time speed).

Men du har ret, man skal ikke partout bruge JNI - men det tror jeg nu
heller ikke er tilfældet, da de fleste der ser JNI første gang, vender om :D

/Brian Matzon


Daniel Jacobsen (18-10-2002)
Kommentar
Fra : Daniel Jacobsen


Dato : 18-10-02 08:08

IBM kører på sine mainframes java-programmer, kompileret med deres egen
JIT-compiler specifikt til UNIX.
"Jamen ånden i Java er jo netop at det kan kører på alle styresystemer?"
svar "Nej! Du kan bruge DIN KODE på alle styresystemer"... så er et jo op
til folk selv hvilket niveau de vil kompilere deres kode til. 3 gode grunde
til at kompilere OS-afhængigt:

1. Java er møghamrende/langsomt
2. Java fylder det hvide ud af øjnene i RAM
3. Java er afhængigt af et stort program kalde JVM

Måske netop derfor vælger IBM at kompilere til et specifikt OS....er IBM så
dumme..? Næh, de ved bare hvad de laver...

/Daniel J.



Brian Matzon (18-10-2002)
Kommentar
Fra : Brian Matzon


Dato : 18-10-02 06:48

Jeg flueknepper lige lidt...

Daniel Jacobsen wrote:
> IBM kører på sine mainframes java-programmer, kompileret med deres egen
> JIT-compiler specifikt til UNIX.
Mener du ikke AOT (Ahead Of Time) kompiler?, ellers er det jo det samme...

> 1. Java er møghamrende/langsomt
Et sprog kan (næsten) ikke være langsomt...
Java's VM har en langsom opstart, og er i de fleste (i hvert fald
desktop mæssigt) langsommere end hvad man er vant til med precompilede
programmer

> 2. Java fylder det hvide ud af øjnene i RAM
relativt...

> 3. Java er afhængigt af et stort program kalde JVM
relativt, ved mig fylder JVM'en 1.141 kB ...
At mine programmer bruger en masse klasser der (tilfældigvis :)) følger
med Java, er jo ikke JVM'en skyld.

Det er farligt at bedynde at klandre Java's VM for at være langsom,
bruge meget RAM - det er alting relativt til det programmet skal lave...
Jeg synes også at Windows XP er langsomt, og bruger meget ram - men jeg
synes det er OK, fordi det skal vitterligt lave meget!

Der er mange diskussioner omkring JIT vs. AOT compiling - og det jeg
synes at kunne læse er at en kompination er det bedste - ikke det ene
eller det andet...

/Brian Matzon


Lars Dam (18-10-2002)
Kommentar
Fra : Lars Dam


Dato : 18-10-02 07:47

On Fri, 18 Oct 2002 00:07:30 -0700, "Daniel Jacobsen" <dj@g-a-f.dk>
wrote:

>IBM kører på sine mainframes java-programmer, kompileret med deres egen
>JIT-compiler specifikt til UNIX.
>"Jamen ånden i Java er jo netop at det kan kører på alle styresystemer?"
>svar "Nej! Du kan bruge DIN KODE på alle styresystemer"... så er et jo op
>til folk selv hvilket niveau de vil kompilere deres kode til. 3 gode grunde
>til at kompilere OS-afhængigt:

Jeg er ked af det, men ingen af de grunde du nævner er særligt gode!
>1. Java er møghamrende/langsomt

Er det? Min erfaring er at når folk oplever java programmer som
langsomme, er det fordi de mennesker der har kodet programmet ikke har
forstået paradigment i jave, og laver ting som går på tværs af den
måde som man bør implementeres på.
Desuden så tvivler jeg på at de firmaer der vælger j2ee som løsning
nok ikke ville gøre dette, hvis java var langsomt.

>2. Java fylder det hvide ud af øjnene i RAM
Du mener altså at hvis man laver en exe fil ud af et java program, så
vil det fylde mindre? Lyder usandsynligt, da de elementer der ligger i
JVM'en bliver indkompileret i dit program, og de klasse biblioteker
som skal bruges også bliver lavet om til exe/dll.. Du ændrer blot kode
typen, men ikke mængden.

>3. Java er afhængigt af et stort program kalde JVM
Som i 2. Hvis du fjerner JVM, hvordan håndterer dit program så lige
pludselig tråde, garbagecollection o.m.a.? Nej den kode bliver
tilføjet din kode, som dermed bliver større end dit oprindelige java
program.

Det skal lige siges at det _kan_ være at den endelige størrelse måske
bliver marginalt mindre, men jeg vil påstå at dette er et dårligt
'køb' i forhold til de potentielle nye fejlkilder, samt debugnings
besværligheder, og andre problemer der måtte komme.

Prøv at komme med nogle bedre argumenter end ovenstående, eller prøv i
det mindste at lægge noget bevis for dagen for dine påstande, istedet
for blot at slynge klassiske fordomme ud.

For at hjælpe dig er her et, som er væsentligt mere
relevant/fornuftigt end ovenstående:

4. Ved at kompilere til native exe, gør man det mere besværligt for
hackere at 'reverse engineer' eens program. Så som en slags kopi
beskyttelse kan det måske være en meget god ide.

>Måske netop derfor vælger IBM at kompilere til et specifikt OS....er IBM så
>dumme..? Næh, de ved bare hvad de laver...

Ja, det må man gå ud fra? Hvad er det de kompilerer, og fortæler de
hvorfor de gør det?

>/Daniel J.

vh. ld

p.s. fordomme er gode. Enten har man ret, og så er det godt, eller
også har man ikke ret, og så kan man jo blive positivt overrasket

Daniel Jacobsen (18-10-2002)
Kommentar
Fra : Daniel Jacobsen


Dato : 18-10-02 21:09

Java er et fortolket sprog, hvilket altid vil medfører et stort
hastighedstab. Kompileres til maskin-kode vil der være vundet en hel del
hastighed OG det vil fylde mindre.

En ting der er godt ved Java, indrømmet, J2ee og andet der har med netværk
at gøre, men har I prøvet at lave GUI, DET kører langsomt som bare - det er
et faktum. JVM sluger pænt meget RAM og er tungt at kører med, tungere end
at f.eks. køre et C++ program på Windows, og det har intet at gøre med hvor
godt det er kodet



Jonathan Stein (18-10-2002)
Kommentar
Fra : Jonathan Stein


Dato : 18-10-02 15:02

Daniel Jacobsen wrote:

> Java er et fortolket sprog, ...

Java kompileres til byte-kode, som fortolkes af JVM'en.

> ... JVM sluger pænt meget RAM og er tungt at kører med, tungere end
> at f.eks. køre et C++ program på Windows, og det har intet at gøre med hvor
> godt det er kodet

GUI performance skyldes nok primært, at man vælger at tilgå grænsefladen
gennem et platformsuafhængigt abstraktionslag. Hvis man brugte native metoder,
ville performance formentlig være sammenlignelig med kompileret C-kode.

M.v.h.

Jonathan

--
Nyt alternativ til egen server: JSP Enterprise hotel med adgang til
Enterprise Java Beans, egen Java Virtual Machine og egen IP-adresse
(giver mulighed for eget SSL-certifikat).
http://www.jsp-hotel.dk/



Anders K. Olsen (18-10-2002)
Kommentar
Fra : Anders K. Olsen


Dato : 18-10-02 16:27

"Daniel Jacobsen" <dj@g-a-f.dk> skrev i en meddelelse
news:aoopt8$45u$1@news.cybercity.dk...
> Java er et fortolket sprog, hvilket altid vil medfører et stort
> hastighedstab. Kompileres til maskin-kode vil der være vundet en hel del
> hastighed OG det vil fylde mindre.
>
> En ting der er godt ved Java, indrømmet, J2ee og andet der har med netværk
> at gøre, men har I prøvet at lave GUI, DET kører langsomt som bare - det
er
> et faktum. JVM sluger pænt meget RAM og er tungt at kører med, tungere end
> at f.eks. køre et C++ program på Windows, og det har intet at gøre med
hvor
> godt det er kodet

Det jeg godt kan lide ved Java er, at Java gør det let og hurtigt for mig at
udvikle programmer som fungerer. Nej, programmerne er måske ikke helt
optimale. Ja, programmerne afhænger af en virtuel maskine som sikkert kan
mere end jeg har brug for, og derfor fylder mere end strengt nødvendigt for
mit program.

Nej, Swing er ikke den hurtigste brugergrænsefladeteknologi, men den
fungerer fint sammen med Java, og jeg behøver ikke at spekulere over hvilken
maskine mit program måske skal afvikles på.

Selv Microsoft er gået over til at bruge en virtuel maskine til at afvikle
deres programmer på. C# er jo bare en opdateret udgave af Java, og deres CLI
er vel bare en variation af Java's class koncept (hvis jeg har forstået det
rigtigt). Microsoft skal ikke være platformsuafhængig, så de kan
selvfølgelig optimere nogle ting som Java ikke kan, fx. brugergrænsefladen.

Men hvis du vil have det hurtigste, mest optimale for lige netop dit
program, og det der bruger mindst hukommelse, må jeg så ikke foreslå at du
udvikler der hele i maskinkode? Så kan du jo optimere det helt i bund. Jeg
er sikker på, at man vil kunne lave et meget bedre og mere effektivt program
i maskinkode end man kan i fx. Java eller C++. Det vil bare tage meget meget
længere tid at udvikle programmet.

Venlig hilsen
Anders



Anders K. Olsen (15-10-2002)
Kommentar
Fra : Anders K. Olsen


Dato : 15-10-02 22:33

"Gimmer" <Gimmer@pc.dk> skrev i en meddelelse
news:3dac5c12$0$7035$edfadb0f@dspool01.news.tele.dk...
> Findes der ikke et program som laver en class fil om til exe?

class til exe er ikke nok. Du er nødt til at have hele (eller i hvert fald
dele af) den virtuelle maskine med, da det jo er den som indeholder alle
runtime omgivelser som fx. garbage collection, tråd håndtering osv.

Det er sikkert muligt, men det kunne let gå hen og blive en temlig stor .exe
fil hvis det hele skal linkes statisk. Ellers skal du til at levere
libraries med, og så kan du vel lige så godt levere JRE med.

Hvordan håndteres dynamisk class-loading egentlig fra en .exe fil? Bliver
man nødt til at fraskrive sig denne mulighed?

/Anders



Gimmer (17-10-2002)
Kommentar
Fra : Gimmer


Dato : 17-10-02 13:38

takker mange gange for svarene!
vh Gimmer
"Anders K. Olsen" <ako@post.tele.dk> wrote in message
news:3dac89b6$0$3382$edfadb0f@dspool01.news.tele.dk...
> "Gimmer" <Gimmer@pc.dk> skrev i en meddelelse
> news:3dac5c12$0$7035$edfadb0f@dspool01.news.tele.dk...
> > Findes der ikke et program som laver en class fil om til exe?
>
> class til exe er ikke nok. Du er nødt til at have hele (eller i hvert fald
> dele af) den virtuelle maskine med, da det jo er den som indeholder alle
> runtime omgivelser som fx. garbage collection, tråd håndtering osv.
>
> Det er sikkert muligt, men det kunne let gå hen og blive en temlig stor
..exe
> fil hvis det hele skal linkes statisk. Ellers skal du til at levere
> libraries med, og så kan du vel lige så godt levere JRE med.
>
> Hvordan håndteres dynamisk class-loading egentlig fra en .exe fil? Bliver
> man nødt til at fraskrive sig denne mulighed?
>
> /Anders
>
>



lufia (04-11-2002)
Kommentar
Fra : lufia


Dato : 04-11-02 15:51

Der findes vist en ok free compiler der kan lave exe filer til linux
Synes jeg har lsæt om den ved ikke om nogen kender den? Mener endda man kan
installere den fra mandrake 9 distro


luffe



Martin Moller Peders~ (04-11-2002)
Kommentar
Fra : Martin Moller Peders~


Dato : 04-11-02 16:13

In <3dc6894d$0$130$edfadb0f@dtext01.news.tele.dk> "lufia" <herluf@cs.auc.dk> writes:

>Der findes vist en ok free compiler der kan lave exe filer til linux
>Synes jeg har lsæt om den ved ikke om nogen kender den? Mener endda man kan
>installere den fra mandrake 9 distro

..exe filer giver ikke mening under linux.

/Martin




Jesper Sørensen (04-11-2002)
Kommentar
Fra : Jesper Sørensen


Dato : 04-11-02 16:28


"Martin Moller Pedersen" <tusk@daimi.au.dk> wrote in message
news:aq62qb$j64$1@news.net.uni-c.dk...
> In <3dc6894d$0$130$edfadb0f@dtext01.news.tele.dk> "lufia"
<herluf@cs.auc.dk> writes:
>
> >Der findes vist en ok free compiler der kan lave exe filer til linux
> >Synes jeg har lsæt om den ved ikke om nogen kender den? Mener endda man
kan
> >installere den fra mandrake 9 distro
>
> .exe filer giver ikke mening under linux.
>
> /Martin

Man kunne da prøve at køre dem med wine :P

JS



Michael Banzon (05-11-2002)
Kommentar
Fra : Michael Banzon


Dato : 05-11-02 21:19

> > >Der findes vist en ok free compiler der kan lave exe filer til linux

> > >Synes jeg har lsæt om den ved ikke om nogen kender den? Mener endda man
> kan
> > >installere den fra mandrake 9 distro

Altså... GCC kan, og den var (sidst jeg kiggede) gratis og den fungerer
vidst også
nogenlunde, selvom det er et ret nyt og ukendt projekt *LOL*

> > .exe filer giver ikke mening under linux.

Betyder extension overhovedet noget??

> Man kunne da prøve at køre dem med wine :P



/ Michael



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste