Java 我使用FileHandler创建了一个logger类来将日志写入一个文件,但是它';它只打印到控制台
我试图创建一个java记录器文件,将输出写入项目文件夹(NetBeans、MacOS)中的文件。我这样做是为了一个学校项目,所以我不能使用Log4j。我已经回顾了以前提出的关于这个主题的问题,并尝试实施这些解决方案,但我仍然没有看到任何成功。我是否需要扩展文件路径,或者是否缺少一个主要组件?任何正确的步骤都会有帮助,谢谢 我已经尝试将文件路径从users文件夹一直扩展到netbeans中的单个项目文件夹。我已经看了很多参考资料和示例,但无论我缺少什么元素,我都没有找到Java 我使用FileHandler创建了一个logger类来将日志写入一个文件,但是它';它只打印到控制台,java,logging,utility,Java,Logging,Utility,我试图创建一个java记录器文件,将输出写入项目文件夹(NetBeans、MacOS)中的文件。我这样做是为了一个学校项目,所以我不能使用Log4j。我已经回顾了以前提出的关于这个主题的问题,并尝试实施这些解决方案,但我仍然没有看到任何成功。我是否需要扩展文件路径,或者是否缺少一个主要组件?任何正确的步骤都会有帮助,谢谢 我已经尝试将文件路径从users文件夹一直扩展到netbeans中的单个项目文件夹。我已经看了很多参考资料和示例,但无论我缺少什么元素,我都没有找到 public class
public class log {
private final static Logger LOGGER =
Logger.getLogger(log.class.getName());
private final static FileHandler handleLog = null;
public static void start() throws IOException,
SecurityException{
FileHandler handleLog = new
FileHandler("/Users/cassie/NetBeansProjects/GlobalConsulting-
userLog.%u.%g.txt", 1024 * 1024, 10, true);
SimpleFormatter simple = new SimpleFormatter();
handleLog.setFormatter(simple);
LOGGER.addHandler(handleLog);
LOGGER.setLevel(Level.INFO);
}
public static void main(String[] args) throws IOException,
SecurityException{
start();
LOGGER.info("------------------START--------------------");
}
}
当我在另一个文件中调用它时,我就是这样做的
LOGGER.log(Level.INFO, "{0} logged in", currentUser.getUsername());
我所希望的是,当程序运行时,输出(用户登录)将打印到项目文件夹中的日志文件中,并在重写之前更新10次。我没有收到任何错误消息,但所有的输出都直接发送到控制台
我没有收到任何错误消息,但所有的输出都直接发送到控制台
使用代码中的来确定记录器树的状态。要查看日志文件的输出,您需要以下内容:
java0.log
的文件中创建一个日志文件。如果在运行程序之前指定了文件路径,但目录不存在,则通常会发生这种情况Level.ALL
null
)。JDK没有附带任何功能,所以这不应该是一个问题回答这些问题,您应该能够确定为什么看不到日志文件。您在类中使用的记录器类是否来自任何日志API?忽略我之前的评论。我可以知道你怎么称呼它为另一个文件吗?我这样称呼它:LOGGER.log(Level.INFO,“{0}登录”,currentUser.getUsername());我是说,你是如何执行另一个类的?另一个类有自己的主方法吗?如果可能的话,也请发布其他类的代码。