iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >解决logback-classic 使用testCompile的打包问题
  • 695
分享到

解决logback-classic 使用testCompile的打包问题

2024-04-02 19:04:59 695人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

logback-classic 使用testCompile的打包 今天使用gradle打包的时候logback-classic一直打包不进去。 打包logback-classic的代

logback-classic 使用testCompile的打包

今天使用gradle打包的时候logback-classic一直打包不进去。

打包logback-classic的代码:


// https://mvnrepository.com/artifact/ch.qos.logback/logback-classic
testCompile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'

因为我以前是用的Maven,对比maven的代码:


<!-- Https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
    <scope>test</scope>
</dependency>

这里标明了是test的,所以猜测可能是test这个东西导致打包失败,所以把test去掉,使用一般的打包方式:


compile group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'

这时打包成功了。

上网查了下scope为test表示依赖项目仅仅参与测试相关的工作,包括测试代码的编译,执行。比较典型的如junit。

奇怪的是logback-classic的包从开始的时候一直到1.2.3版都是提供的test编译,为什么不是默认的compile?

logback的用法以及遇到的问题解决办法

基于Spring Boot使用logback.xml生成日志文件信息需要先在pom.xml导入依赖


<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.25</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.7</version>
</dependency>

缺少任何一个都有可能导致报错!一定要添加完整。

然后在默认创建的src/main/resources中创建logback.xml文件,在其中添加内容如下:


<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<!--定义日志文件的存储地址 -->
<property name="LOG_HOME" value="logs" />
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
</appender>
<!-- 按照每天生成日志文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/TestWEB.log.%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数-->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
</encoder>
<!--日志文件最大的大小,如果与每日生成一个文件的属性共存,一旦不重启程序,将不会每日新生成一个文件-->
<!-- <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>10MB</MaxFileSize>
</triggeringPolicy> -->
</appender>

<!-- 日志输出级别,指定以什么方式输出对应上面appender的name -->
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>

输出创建文件的路径可以使用绝对路径,也可以使用相对路径,虽然建议使用绝对路径,但在项目工程有需求的时候也可以使用相对路径

相对路径的文件夹在项目根目录创建,日志文件在此文件夹内生成。

level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL和OFF,不能设置为INHERITED或者同义词NULL。 默认是DEBUG。

如果想限制每个日志文件的大小可以这样:


<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->  

<FileNamePattern>${LOG_HOME}/TestWeb.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>    
<!--日志文件保留天数-->    
<MaxHistory>10</MaxHistory>    
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">

<maxFileSize>10MB</maxFileSize>    
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>

注意日志文件后面的%i;

修改<maxFileSize>10MB</maxFileSize>限制每个日志文件的大小。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 解决logback-classic 使用testCompile的打包问题

本文链接: https://www.lsjlt.com/news/131478.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 解决logback-classic 使用testCompile的打包问题
    logback-classic 使用testCompile的打包 今天使用gradle打包的时候logback-classic一直打包不进去。 打包logback-classic的代...
    99+
    2024-04-02
  • 如何解决logback-classic使用testCompile的打包问题
    本篇内容介绍了“如何解决logback-classic使用testCompile的打包问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!lo...
    99+
    2023-06-20
  • 如何解决spring-boot使用logback的问题
    这篇文章主要介绍了如何解决spring-boot使用logback的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。用ConsoleAppender.java来举例,假设在...
    99+
    2023-06-20
  • 使用Gradle打依赖包失败的问题及解决
    目录使用Gradle打依赖包失败经过测试后发现应用场景Gradle不能加载依赖包的处理总结使用Gradle打依赖包失败 以前在使用Maven开发java web的项目中,我们通常会用...
    99+
    2023-05-15
    使用Gradle Gradle打依赖包失败 Gradle依赖
  • pyinstaller打包遇到的问题解决
    1、ModuleNotFoundError: No module named ‘scipy.spatial.transform_rotaion_groups’...
    99+
    2023-02-17
    pyinstaller打包
  • 完美解决Logback configuration error detected的问题
    目录错误日志pom.xml解决办法1解决办法2今天在springboot项目中替换log4j2日志的时候遇见的问题,闲话不多说。 错误日志 Logging system fail...
    99+
    2024-04-02
  • 解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题
    application.properties 加入以下配置 #logback home logging.path=D:/logs/esb-producer logback.x...
    99+
    2024-04-02
  • 如何解决使用vue打包时文件过大的问题
    这篇文章主要为大家展示了“如何解决使用vue打包时文件过大的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决使用vue打包时文件过大的问题”这篇文章吧...
    99+
    2024-04-02
  • 使用pyinstaller打包python文件遇到的问题和解决方法
    pyinstaller 的基本使用方法 情况1:当所使用的代码都在一个.py文件中,且该代码中没有调用其他文件和import自己写的函数时 例如: 打包下面这个检查输入的ip是否符合规范的程序ipch...
    99+
    2023-10-23
    python 开发语言
  • css-loader打包出问题怎么解决
    这篇文章主要讲解了“css-loader打包出问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css-loader打包出问题怎么解决”吧! 各种...
    99+
    2024-04-02
  • 使用Springboot打成jar包thymeleaf的问题
    目录Springboot打成jar包thymeleaf1.使用springboot打成jar包2. controller的书写springboot + thymeleaf jar包运...
    99+
    2024-04-02
  • JavaScript打包的问题:Java是否能够解决?
    随着前端技术的不断发展,JavaScript已经成为了前端开发的主要语言之一。在开发过程中,我们通常需要将多个JavaScript文件打包成一个文件,以便于网页加载。然而,这个过程并不总是那么顺利。在本文中,我们将探讨JavaScript...
    99+
    2023-08-18
    响应 打包 javascript
  • 解决maven没有打包xml文件的问题
    目录maven没有打包xml文件的问题maven打包时不打包resources下的xml文件maven没有打包xml文件的问题 最近使用maven带管理项目,采用SSM的技术栈,在配...
    99+
    2024-04-02
  • 如何解决webpack4 css打包压缩问题
    这篇文章将为大家详细讲解有关如何解决webpack4 css打包压缩问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。这两天一直在练习这个webpack4, 发现有好多问...
    99+
    2024-04-02
  • 如何解决webpack dll打包重复问题
    这篇文章主要介绍了如何解决webpack dll打包重复问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。关于webpack dll的使用,...
    99+
    2024-04-02
  • 用electron打包vue项目中的报错问题及解决
    目录1.  首先一定要cd到项目的根目录2.  接下来运行如何用electron打包vue项目,请参见我的另一篇文章:如何用electron打包vue项目为桌面应...
    99+
    2024-04-02
  • 使用maven基本命令,打包包名问题
    目录maven打包命令maven安装本地jar包总结maven打包命令 mvn clean package:本地打包,jar或者war存放在本地项目target下mvn clean ...
    99+
    2023-05-15
    maven基本命令 打包包名 maven命令
  • 解决pycharm临时打包32位程序的问题
    问题: 64位系统安装了64位的python,打包生成的程序是64位的,在32位系统上不兼容无法运行。 想安装多个python,只临时调用32位python解释器来打包32位程序,不...
    99+
    2024-04-02
  • Unix 下的 Go 打包:如何解决常见的问题?
    在Unix系统下使用Go语言进行打包是一个非常常见的任务。然而,由于不同的Unix系统之间存在差异,可能会遇到一些常见的问题。本文将介绍如何解决这些问题,同时演示一些代码。 一、Go打包的基本知识 在开始介绍常见问题之前,我们需要先了解一些...
    99+
    2023-08-16
    打包 load unix
  • 解决spring-boot使用logback的大坑
    最近在写一个logback的kafka appender,无意中发现spring-boot在使用logback时的一个坑 用ConsoleAppender.java来举例,假设在lo...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作