Ich versuche, eine benutzerdefinierte log.properties
Datei zu laden, wenn meine Anwendung gestartet wird.Laden Sie java.util.logging.config.file für die Standardinitialisierung
Meine Eigenschaftendatei befindet sich im selben Paket wie meine Hauptklasse. Daher nahm ich an, dass der Befehlszeilenparameter -Djava.util.logging.config.file=log.properties
die Eigenschaftendatei laden sollte.
Aber die Eigenschaften werden nur geladen, wenn ich einen vollständigen absoluten Pfad zur Eigenschaftendatei angeben. Irgendwelche Vorschläge, wie man einen relativen Pfad benutzt?
Hallo, danke für die Antwort. Ich fange gerade mit Java an, also weiß ich nicht viel über das Verpacken etc. Ich habe ein NetBeans Standardprojekt mit einem Paket, das javaapplication genannt wird. Die Datei log.properties befindet sich jetzt im Standardpaket. So sieht meine Befehlszeile wie folgt: JavaApplication \ dist> javaw -Djava.util.logging.config.file = log.properties -jar JavaApplication.jar Die Eigenschaften noch Datei nicht geladen. Könnten Sie mir bitte einen zusätzlichen Hinweis geben? :) – abp
Sind Sie sicher, dass es nicht geladen ist? "javaw" schluckt alle Ausgaben nach System.out und System.err. Versuchen Sie stattdessen "Java" (ohne "w"). Sie können auch versuchen, den Code zu debuggen, um zu sehen, warum er nicht protokolliert wird. Setzen Sie einfach einen Haltepunkt und "betreten" Sie den Protokollierungsaufruf (statt "übergehen"). log4j bietet eine Debug-Option, mit der die Konfiguration beim Lesen ausgedruckt wird. Ich weiß nicht, ob Sie das gleiche mit java.util.logging tun können. –
Danke für die Antwort. Ich denke, ich bleibe bei der Laufzeitkonfiguration über eine Klasse, weil ich die Eigenschaftendatei nicht mit einem relativen Pfad laden kann. – abp