Storm1.1.0<控制台输出指定Log信息>

本文介绍如何通过配置Log4j2来仅显示WARN级别的日志信息,避免控制台输出过多INFO信息导致关键输出被淹没。通过创建log4j2.xml文件并放置在classpath下,可以有效过滤日志输出。

写storm的时候,有的时候控制台会输出很多很多的“INFO”信息,造成自己写的System.out.println之类的信息会被冲刷掉,做接下来的配置能够有效地输出指定Log信息。

参考:https://logging.apache.org/log4j/2.x/manual/configuration.html

在classpath下新建一个log4j2.xml文件,里面填充一下内容:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
        </Console>
    </Appenders>
    <Loggers>
        <Root level="WARN">
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

这个指定输出控制台的的是WARN级别之上的信息以及标准控制台的输出

这里写图片描述

<think>我们之前讨论的是Java实现msg、eml和pdf之间转换的工具类,其中msg文件的处理使用了net.sourceforge.jephtools:msgparser:1.1.0。现在用户遇到的问题是:在阿里巴巴仓库中找不到这个依赖。 解决方案: 1. 检查仓库配置:确保在项目的pom.xml中正确配置了仓库。因为net.sourceforge.jephtools可能在Maven中央仓库,而阿里巴巴仓库是中央仓库的镜像,但有时候可能没有同步所有库。可以尝试添加Maven中央仓库。 2. 手动下载并安装:如果仓库中确实没有,可以手动下载jar包,然后使用mvn install命令安装到本地仓库。 3. 使用其他仓库:比如在pom.xml中添加一个包含该依赖的仓库。 具体步骤: 步骤1:检查Maven配置 在pom.xml中,确保阿里巴巴仓库配置正确,或者尝试直接使用Maven中央仓库。例如: ```xml <repositories> <repository> <id>aliyun</id> <url>https://maven.aliyun.com/repository/public</url> </repository> <!-- 如果阿里云没有,可以添加中央仓库 --> <repository> <id>central</id> <url>https://repo1.maven.org/maven2</url> </repository> </repositories> ``` 步骤2:手动安装依赖 如果上述方法不行,可以手动下载依赖并安装到本地仓库。 下载地址:https://sourceforge.net/projects/jephtools/files/msgparser/1.1.0/msgparser-1.1.0.jar/download 然后使用以下命令安装到本地Maven仓库: ```shell mvn install:install-file -Dfile=msgparser-1.1.0.jar -DgroupId=net.sourceforge.jephtools -DartifactId=msgparser -Dversion=1.1.0 -Dpackaging=jar ``` 步骤3:在pom.xml中直接使用本地安装的依赖 确保pom.xml中的依赖配置正确: ```xml <dependency> <groupId>net.sourceforge.jephtools</groupId> <artifactId>msgparser</artifactId> <version>1.1.0</version> </dependency> ``` 步骤4:如果上述方法都不行,可以考虑使用其他库 例如,Apache POI提供了对Outlook文件的一些支持,但可能不支持msg文件的完整解析。另一个选择是使用com.auxilii:msgparser:1.0.0(如果可用)。 例如,可以尝试: ```xml <dependency> <groupId>com.auxilii</groupId> <artifactId>msgparser</artifactId> <version>1.0.0</version> </dependency> ``` 注意:替换库可能需要修改代码。 生成相关问题: 1. 如何配置Maven使用多个仓库? 2. 除了msgparser,还有哪些Java库可以解析msg文件? 3. 手动安装Maven依赖的详细步骤是什么? </think>### 在阿里巴巴仓库中找不到 `net.sourceforge.jephtools:msgparser:1.1.0` 的解决方案 #### 1. **检查仓库配置** 首先确认 `settings.xml` 或 `pom.xml` 中配置的阿里云仓库 URL 是否正确: ```xml <!-- pom.xml 示例 --> <repositories> <repository> <id>aliyun</id> <url>https://maven.aliyun.com/repository/public</url> </repository> </repositories> ``` 若配置无误但仍找不到依赖,可能是阿里云镜像未同步该库[^2]。 --- #### 2. **手动安装依赖到本地仓库** 通过 Maven 命令手动安装 JAR 包: ```shell mvn install:install-file \ -Dfile=msgparser-1.1.0.jar \ -DgroupId=net.sourceforge.jephtools \ -DartifactId=msgparser \ -Dversion=1.1.0 \ -Dpackaging=jar ``` **步骤**: 1. 从 [SourceForge 下载页面](https://sourceforge.net/projects/jephtools/files/msgparser/1.1.0/) 获取 JAR 包 2. 执行上述命令 3. 在项目中正常引用依赖 --- #### 3. **使用替代仓库** 在 `pom.xml` 中添加 Maven 中央仓库或其他镜像源: ```xml <repositories> <repository> <id>central</id> <url>https://repo1.maven.org/maven2/</url> </repository> <!-- JFrog 仓库示例 --> <repository> <id>jfrog</id> <url>https://jfrog.com/artifactory/jcenter/</url> </repository> </repositories> ``` --- #### 4. **替代方案(推荐)** 使用更活跃的 MSG 解析库 **`com.auxilii:msgparser`**: ```xml <dependency> <groupId>com.auxilii</groupId> <artifactId>msgparser</artifactId> <version>1.6.0</version> <!-- 最新稳定版 --> </dependency> ``` **代码迁移示例**: ```java import com.auxilii.msgparser.MsgParser; public void msgToPdf(String msgPath) { MsgParser parser = new MsgParser(); Message msg = parser.parseMsg(new File(msgPath)); String body = msg.getBodyText(); // 获取邮件正文 // ...后续转换逻辑 } ``` --- #### 5. **验证依赖树** 执行命令检查依赖解析: ```shell mvn dependency:tree -Dincludes=net.sourceforge.jephtools ``` 若输出为空则确认仓库中确实不存在该依赖[^4]。 --- ### 关键问题总结 | 问题类型 | 解决方案 | 推荐度 | |---------|---------|-------| | 仓库配置错误 | 检查阿里云仓库 URL | ⭐⭐ | | 依赖未同步 | 手动安装 JAR 包 | ⭐⭐ | | 镜像源缺失 | 添加 Maven 中央仓库 | ⭐⭐⭐ | | 库已弃用 | 改用 `com.auxilii:msgparser` | ⭐⭐⭐⭐ | 通过以上方案可解决 99% 的依赖缺失问题,优先推荐使用替代库方案,其维护更活跃且兼容性更好。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值