java - Lav en eksekverbar JAR-run i en konsol, når du dobbeltklikker

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg er i færd med at overføre enkle konsol apps skrevet i C ++ til Java for at vise, hvordan lignende sprogene er, og hvordan kode kan porteres. Jeg har eksporteret eksekverbare JAR'er til programmerne, der bruger Eclipse. Disse JAR'er fungerer fint, når de køres ved hjælp af kommandoen java -jar. Men de kører ikke korrekt, når de udføres fra Windows Explorer (dobbeltklikket). Et konsolvindue åbner og lukker hurtigt.


Den eneste løsning, jeg har fundet hidtil, er at bruge en batchfil. Er der nogen anden mulighed?

Bedste reference


Der er nogle muligheder:



  1. Vent lidt, når programmet er færdigt, så du kan læse output.

  2. Ring til System.in.read() (igen i slutningen af ​​programmet), som vil vente, indtil du skriver en char og hits enter.

  3. Opret din egen lille swing terminal, som ikke lukkes, når applikationskoden er færdig.


Andre referencer 1


Det lader til, at jre bruges fra kommandolinjen og fra registreringsdatabasen er ikke det samme (det kan forekomme, når flere JRE'er er installeret)


Har du tjekket ind i din Windows-registreringsdatabase, hvad bruges jre til at køre de eksekverbare krukker?
Du kan finde mere på registreringsdatabaseindstillingerne på solens websted [2]

Andre referencer 2


Synes for mig, at din hovedklasse ikke engang bliver henrettet.
Dette ville forklare hurtig åbning/lukning af konsolvinduet.


Eller er det muligt, at et andet program end java har 'jar' filtype?
Skete efter mig efter installation af en Nokia-software.

Andre referencer 3


Brug af en batch-fil synes at være min bedste mulighed. Jeg formoder, at det er derfor, Eclipse har en launcher.

Andre referencer 4


Skift det åbne med programmet til
c: \ Programfiler \ java \ jre7 \ bin \ javaw.exe