04. december 2006 - 11:25Der er
12 kommentarer og 1 løsning
Vise consolens indhold i et GUI vindue
Hej Hvordan kan jeg får GUI'en til at vise det, som bliver udskrevet i consolen? Det behøver ikke være realtime, altså GUI'en må gerne tage det hele fra consolen på en gang og visualisere det i vinduet efter programmet er termineret.
PrintStream save = System.out; ByteArrayOutputStream baos = new ByteArrayOutputStream(); PrintStream pw = new PrintStream(baos); System.setOut(pw); // goer noget som skriver til System.out System.setOut(save); pw.flush(); // nu indeholder baos.toString() al console output
jeg accepterer dit svar arne_v men jeg har nu et lille problem mere og hvis du også lige gider kigge på det, er det kanon. jeg har lavet en jar fil, med direktiv Main-Class og direktiv Class-Path som indeholder flere jar filer der skal inkluderes i dem den endelige jar fil. Programmet kører fint fra eclipse, men når jeg kører den fra kommandoprompten får jeg følgende fejl:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logg er at myLogging.Log3.<init>(Log3.java:7) at myLogging.Log3Main.main(Log3Main.java:19)
linie 7 i Log3 klassen er: public Logger logger = Logger.getLogger("Log3");
og typen Logger skal hentes fra org.apache.log4j, hvilket både importeres i koden og også er inkluderet jar fil (log4j.jar). jeg tror selv det er et eller andet med min ClassPath. Hvad siger du/i?
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger at myLogging.Log3.<init>(Log3.java:7) at myLogging.Log3Main.main(Log3Main.java:19)
og der er linieskift til sidst. men det mærkelige er, når jeg prøver at køre følgende: "jar cvfm errorLogger.jar manifest.mf myLogging" uden at have jar filerne fra manifest filen i myLogging mappe, dukker der den samme exception op.
det har jeg allerede prøvet... men forgæves. men jeg tror godt hvorfor den brokker sig! i eclipse fortæller jeg den under run > arguments at den skal bruge min log4j.xml fil: -Dlog4j.configuration=file:///N:/log4j.xml men hvordan skal denne med når jeg skal lave en jar fil i kommandoprompten!?
jeg har løst problemet. der skulle for det første i kommandoprompten stå: java -Dlog4j.configuration=file:///N:/log4j.xml -jar errorLogger.jar og så skulle alle jar filerne blive kopieret til følgende mapper: ..\Java\jdk1.5.0_09\jre\lib\ext ..\Java\jre1.5.0_09\lib\ext
det har du ret i arne og det bryder jeg mig heller ik om. derfor gravede jeg dybere i det og fandt ud af at jeg blot skulle lave få ændringer i manifest filen, så spiller det hele uden at skulle have jar filerne i ext mappen. manifest filen ser sådan ud nu:
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.