logback使用spring配置,启动报错

项目场景:

一个小项目,单体的springboot足以支撑,不想搞得太复杂,不准备使用docker容器部署,打算直接jar包启动。
日志呢,肯定不能配置相对路径了,但是如果配置了绝对路径 ,开发用windows系统、测试用的linux系统,文件系统不一致,日志的路径就不好配置死了,所以搜了一下,可以加springProperty标签读取spring的配置,我就直接在logback.xml里加了一个
在这里插入图片描述

问题描述

加了之后发现启动会报错,不过日志可按配置正常写到对应的路径下,不过还是要研究下原因

09:39:05,969 |-ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_info] - Failed to create parent directories for [C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\info.log]
09:39:05,970 |-ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_info] - openFile(C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools/info.log,true) call failed. java.io.FileNotFoundException: C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\info.log (文件名、目录名或卷标语法不正确。)
	at java.io.FileNotFoundException: C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\info.log (文件名、目录名或卷标语法不正确。)
	at 	at java.io.FileOutputStream.open0(Native Method)
	at 	at java.io.FileOutputStream.open(FileOutputStream.java:270)
	at 	at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
	at 	at ch.qos.logback.core.recovery.ResilientFileOutputStream.<init>(ResilientFileOutputStream.java:26)
	at 	at ch.qos.logback.core.FileAppender.openFile(FileAppender.java:204)
	at 	at ch.qos.logback.core.FileAppender.start(FileAppender.java:127)
	at 	at ch.qos.logback.core.rolling.RollingFileAppender.start(RollingFileAppender.java:100)
	at 	at ch.qos.logback.core.joran.action.AppenderAction.end(AppenderAction.java:90)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179)
	at 	at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
	at 	at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:64)
	at 	at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:134)
	at 	at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
	at 	at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
	at 	at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150)
	at 	at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)
	at 	at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:417)
	at 	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362)
	at 	at org.apache.commons.logging.LogAdapter$Slf4jAdapter.createLocationAwareLog(LogAdapter.java:130)
	at 	at org.apache.commons.logging.LogAdapter.createLog(LogAdapter.java:91)
	at 	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:67)
	at 	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:59)
	at 	at org.springframework.boot.SpringApplication.<clinit>(SpringApplication.java:202)
09:39:05,970 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
09:39:05,970 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [file_error]
09:39:05,971 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@360207322 - No compression will be used
09:39:05,971 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@360207322 - Will use the pattern C:/Python310/Scripts/;C:/Python310/;C:/Program Files (x86)/Common Files/Oracle/Java/javapath;C:/Windows/system32;C:/Windows;C:/Windows/System32/Wbem;C:/Windows/System32/WindowsPowerShell/v1.0/;C:/Windows/System32/OpenSSH/;C:/Program Files (x86)/NVIDIA Corporation/PhysX/Common;C:/Program Files/NVIDIA Corporation/NVIDIA NvDLISR;D:/Java/jdk1.8.0_171/bin/;D:/Java/jdk1.8.0_171/jre/bin/;D:/PuTTY/;D:/Git/cmd;D:/TortoiseGit/bin;D:/maven-3.6.3/bin/;C:/ProgramData/chocolatey/bin;D:/nodejs/;D:/mysql-8.0.28-winx64/bin;D:/Redis;D:/erl-24.1.7;D:/NetSarang/Xshell 7/;D:/NetSarang/Xftp 7/;D:/wget;D:/gradle-6.9.3/bin;C:/Program Files/dotnet/;C:/Users/25463/AppData/Local/Microsoft/WindowsApps;;D:/JetBrains/IntelliJ IDEA 2020.1/bin;;C:/Users/25463/AppData/Roaming/npm;C:/Users/25463/.dotnet/tools/error.%d{yyyy-MM-dd}.log for the active file
09:39:05,971 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - The date pattern is 'yyyy-MM-dd' from file name pattern 'C:/Python310/Scripts/;C:/Python310/;C:/Program Files (x86)/Common Files/Oracle/Java/javapath;C:/Windows/system32;C:/Windows;C:/Windows/System32/Wbem;C:/Windows/System32/WindowsPowerShell/v1.0/;C:/Windows/System32/OpenSSH/;C:/Program Files (x86)/NVIDIA Corporation/PhysX/Common;C:/Program Files/NVIDIA Corporation/NVIDIA NvDLISR;D:/Java/jdk1.8.0_171/bin/;D:/Java/jdk1.8.0_171/jre/bin/;D:/PuTTY/;D:/Git/cmd;D:/TortoiseGit/bin;D:/maven-3.6.3/bin/;C:/ProgramData/chocolatey/bin;D:/nodejs/;D:/mysql-8.0.28-winx64/bin;D:/Redis;D:/erl-24.1.7;D:/NetSarang/Xshell 7/;D:/NetSarang/Xftp 7/;D:/wget;D:/gradle-6.9.3/bin;C:/Program Files/dotnet/;C:/Users/25463/AppData/Local/Microsoft/WindowsApps;;D:/JetBrains/IntelliJ IDEA 2020.1/bin;;C:/Users/25463/AppData/Roaming/npm;C:/Users/25463/.dotnet/tools/error.%d{yyyy-MM-dd}.log'.
09:39:05,971 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Roll-over at midnight.
09:39:05,972 |-INFO in c.q.l.core.rolling.DefaultTimeBasedFileNamingAndTriggeringPolicy - Setting initial period to Wed Jul 26 09:39:05 CST 2023
09:39:05,972 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
09:39:05,972 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - Active log file name: C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools/error.log
09:39:05,972 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - File property is set to [C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools/error.log]
09:39:05,973 |-ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - Failed to create parent directories for [C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\error.log]
09:39:05,973 |-ERROR in ch.qos.logback.core.rolling.RollingFileAppender[file_error] - openFile(C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools/error.log,true) call failed. java.io.FileNotFoundException: C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\error.log (文件名、目录名或卷标语法不正确。)
	at java.io.FileNotFoundException: C:\Python310\Scripts\;C:\Python310\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D:\Java\jdk1.8.0_171\bin\;D:\Java\jdk1.8.0_171\jre\bin\;D:\PuTTY\;D:\Git\cmd;D:\TortoiseGit\bin;D:\maven-3.6.3\bin\;C:\ProgramData\chocolatey\bin;D:\nodejs\;D:\mysql-8.0.28-winx64\bin;D:\Redis;D:\erl-24.1.7;D:\NetSarang\Xshell 7\;D:\NetSarang\Xftp 7\;D:\wget;D:\gradle-6.9.3\bin;C:\Program Files\dotnet\;C:\Users\25463\AppData\Local\Microsoft\WindowsApps;;D:\JetBrains\IntelliJ IDEA 2020.1\bin;;C:\Users\25463\AppData\Roaming\npm;C:\Users\25463\.dotnet\tools\error.log (文件名、目录名或卷标语法不正确。)
	at 	at java.io.FileOutputStream.open0(Native Method)
	at 	at java.io.FileOutputStream.open(FileOutputStream.java:270)
	at 	at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
	at 	at ch.qos.logback.core.recovery.ResilientFileOutputStream.<init>(ResilientFileOutputStream.java:26)
	at 	at ch.qos.logback.core.FileAppender.openFile(FileAppender.java:204)
	at 	at ch.qos.logback.core.FileAppender.start(FileAppender.java:127)
	at 	at ch.qos.logback.core.rolling.RollingFileAppender.start(RollingFileAppender.java:100)
	at 	at ch.qos.logback.core.joran.action.AppenderAction.end(AppenderAction.java:90)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:309)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:193)
	at 	at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:179)
	at 	at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:165)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:152)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:110)
	at 	at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:53)
	at 	at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:64)
	at 	at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:134)
	at 	at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:84)
	at 	at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
	at 	at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150)
	at 	at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)
	at 	at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:417)
	at 	at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362)
	at 	at org.apache.commons.logging.LogAdapter$Slf4jAdapter.createLocationAwareLog(LogAdapter.java:130)
	at 	at org.apache.commons.logging.LogAdapter.createLog(LogAdapter.java:91)
	at 	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:67)
	at 	at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:59)
	at 	at org.springframework.boot.SpringApplication.<clinit>(SpringApplication.java:202)

原因分析:

看错误感觉是logback.xml的加载顺序比spring的配置早?所以logback取不到这个属性


解决方案:

一番搜查,果然是这个原因,有人说是将logback.xml文件名修改为logback-spring.xml就可以了,试了一下可行,再去查一下logback.xml与logback-spring.xml的区别

logback和logback-spring.xml都可以用来配置logback,但是2者的加载顺序是不一样的。
logback.xml—>application.properties—>logback-spring.xml.

Spring Boot 在logback.xml中读取application.yml中配置的日志路径
logback.xml和logback-spring.xml的区别

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿狸尬多

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值