在学习hutool时遇到的一些问题

下载hutool.jar

这个比较简单,直接在管网下载即可hutool官网

IDEA导入hutool.jar

导入类包很简单不再概述

添加maven依赖

在java项目包的根目录有一个pom.xml,在dependencies中加入以下内容:

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.8</version>
</dependency>

其中version是版本号
hutool-all是将hutool包中所有数据导入

缺少POI错误

在导入完hutool.jar包时如果直接写代码运行可能会出现

You need to add dependency of ‘poi-ooxml‘ to your project, and version

因为hutool包中自带POI包中的功能,但运行时可能还是会出错,当出错时可以在pom.xml中加上

<dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>5.2.3</version>
        </dependency>

第二行是因为博主只使用了excel功能,所以如果有需要可以改成poi
第三行依旧是版本号,需要注意的地方就是,低版本hutool可能不支持低poi版本,建议都是高版本即可

log4j错误

在添加POI依赖后还有可能出现

ERROR StatusLogger Log4j2 could not find a logging implementation.
Please add log4j-core to the classpath. Using SimpleLogger to log to
the console…

此问题是说明你的log4j2没有被读取到,这时候要分两种情况,一种是查询

C:\Users\us1.m2\repository\org\apache\logging

此目录后发现有log4j2,则不需要重新下载log4j2的包,只需要在pom.xml,写上log4j2的依赖即可

<dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-core</artifactId>
       <version>2.18.0</version>
</dependency>

需要注意的是其中version表示的依旧是版本,一定要和logging路径下的log4j2的版本一致

如果发现没有log4j2的包则需要手动下载jar包Log4j2
再导入后,重新写一下依赖即可。

StatusLogger No Log4j 2 configuration错误

log4j2包导入好,依赖也写好后,也可能出现以下错误

ERROR StatusLogger No Log4j 2 configuration file found. Using default
configuration (logging only errors to the console), or user
programmatically provided configurations. Set system property
‘log4j2.debug’ to show Log4j 2 internal initialization logging. See
https://logging.apache.org/log4j/2.x/manual/configuration.html for
instructions on how to configure Log4j 2

解决方法就是在resources中手动写一个log4j2.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Properties>
        <property name="log_level" value="info" />
        <Property name="log_dir" value="log" />
        <property name="log_pattern"
                  value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%p] - [%t] %logger - %m%n" />
        <property name="file_name" value="test" />
        <property name="every_file_size" value="100 MB" />
    </Properties>
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="${log_pattern}" />
        </Console>
        <RollingFile name="RollingFile"
                     filename="${log_dir}/${file_name}.log"
                     filepattern="${log_dir}/$${date:yyyy-MM}/${file_name}-%d{yyyy-MM-dd}-%i.log">
            <ThresholdFilter level="DEBUG" onMatch="ACCEPT"
                             onMismatch="DENY" />
            <PatternLayout pattern="${log_pattern}" />
            <Policies>
                <SizeBasedTriggeringPolicy
                        size="${every_file_size}" />
                <TimeBasedTriggeringPolicy modulate="true"
                                           interval="1" />
            </Policies>
            <DefaultRolloverStrategy max="20" />
        </RollingFile>

        <RollingFile name="RollingFileErr"
                     fileName="${log_dir}/${file_name}-warnerr.log"
                     filePattern="${log_dir}/$${date:yyyy-MM}/${file_name}-%d{yyyy-MM-dd}-warnerr-%i.log">
            <ThresholdFilter level="WARN" onMatch="ACCEPT"
                             onMismatch="DENY" />
            <PatternLayout pattern="${log_pattern}" />
            <Policies>
                <SizeBasedTriggeringPolicy
                        size="${every_file_size}" />
                <TimeBasedTriggeringPolicy modulate="true"
                                           interval="1" />
            </Policies>
        </RollingFile>
    </Appenders>
    <Loggers>
        <Root level="${log_level}">
            <AppenderRef ref="Console" />
            <AppenderRef ref="RollingFile" />
            <appender-ref ref="RollingFileErr" />
        </Root>
    </Loggers>
</Configuration>

NoSuchMethod错误

因为博主在使用的时候,没有注意到之前已经有过log4j2的包,导致又重新下载log4j2包添加进去后又出现

Exception in thread “main” java.lang.NoSuchMethodError: ‘org.apache.logging.log4j.LogBuilder org.apache.logging.log4j.Logger.atDebug()’

这时候可以找到logging目录将下载的版本直接删除,并将pow.xml中log4j2的依赖中的version改成之前版本即可。

以上就是博主在初步学习hutool中遇到的一些问题,希望对初学者有帮助

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值