【发布时间】:2015-01-23 11:42:58
【问题描述】:
我正在尝试将我的多阶段应用程序配置为还将控制台消息(日志)输出到文件。
这是我的主要课程:
public class Main extends Application {
private Stage stage;
private User loggedUser;
...
public static void main(String[] args) throws IOException {
Application.launch(Main.class, (java.lang
.String[])null);
}
@Override
public void start(Stage primaryStage) throws IOException {
try {
stage = primaryStage;
stage.setTitle("FXML Login Sample");
gotoLogin();
primaryStage.show();
} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.INFO, null, ex);
}
}
...
private void gotoProfile() {
try {
FXMLDocumentController fxmlDocument = (FXMLDocumentController) replaceSceneContent("FXMLDocument.fxml");
fxmlDocument.setApp(this);
} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.INFO, null, ex);
}
}
private void gotoLogin() {
try {
LoginController login = (LoginController) replaceSceneContent("login.fxml");
login.setApp(this);
} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.INFO, null, ex);
}
}
如何将控制台的输出也写入文件?我是否应该配置第二个记录器,只使用现有的记录器并将其内容附加到文件中?
【问题讨论】:
-
您使用的是哪个 Logger API?
-
你的日志配置是什么样的?
-
使用 java java.util.logging
-
我想我正在使用默认的 Javafx 日志记录配置,因为我所有的日志记录语句都是这样的:Logger.getLogger(FXMLDocumentController.class.getName()).log(Level.ALL, null, ex);
-
你可能会看看这个帖子:stackoverflow.com/questions/15758685/…。由于您想将相同的输出记录到控制台和文件,它可能更喜欢使用相同的记录器对象。通常我更喜欢 log4j 作为日志 API。
标签: java javafx javafx-2 javafx-8 java.util.logging