Spring Boot# Could not transfer artifact..maven导包问题查看和修改内置Tomcat版本自定义启动Banner
Posted LRcoding
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot# Could not transfer artifact..maven导包问题查看和修改内置Tomcat版本自定义启动Banner相关的知识,希望对你有一定的参考价值。
1. 解决新建Spring Boot项目时包导不进来的问题
新建Spring Boot项目,导入包时,报错Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:2.2.4.RELEASE
-
可以先去阿里的中央仓库,检索对应版本的包是否存在
-
再检查maven配置文件setting文件中,阿里源配置是否正确(注意URL中协议为
https
)<mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>https://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
如果都没问题后,还是报错 sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target(无法找到有效的证书)
解决方法1:在执行 maven命令时忽略证书检查
-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true
解决方法2:将证书添加到Java信任证书库(在Java的安装目录下—> lib —> security —> carcerts)
- 通过浏览器访问https://maven.aliyun.com/nexus/content/groups/public,将证书导出到本地
- 将证书添加到Java信任证书库
- 以管理员身份打开 cmd,进入到 carcerts所在文件目录
- 执行命令
keytool -import -alias cacerts -keystore cacerts -file cer证书所在位置
- 输入默认密钥库口令:changeit,然后输入 Y 信任此证书
- 回到项目中重新 clean,compile
2. 查看和修改内置Tomcat版本
Spring Boot的父级依赖是一个特殊的starter,用来提供相关的Maven默认依赖,使用了父级依赖后,常用的包依赖可以省去version标签
具体提供了哪些 jar包的依赖,可以去maven仓库中对应的位置去查看pom文件(例如:…/org/springframework/boot/spring-boot-dependencies/2.1.3.RELEASE/spring-boot-dependencies-2.1.3.RELEASE.pom)
-
spring-boot-starter-parent 的形式
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>
-
直接在项目的pom文件中,使用
properties
标签覆盖版本<properties> <tomcat.version>10.0.0</tomcat.version> </properties> <!-- 覆盖版本后,还需要添加juli的依赖包,避免报错 --> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-juli</artifactId> <version>$tomcat.version</version> </dependency>
-
-
spring-boot-dependencies 的形式,需要通过dependencyManagement进行依赖管理
spring-boot-starter-parent 包继承自 spring-boot-dependencies
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.1.3.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
- 此形式将不能使用 properties的方式去覆盖版本,需要在dependencyManagement里面的spring-boot-dependencies之前添加要升级的完整依赖
3. 自定义启动Banner
- 在Spring Boot项目的 resources目录下新建一个 banner.txt 文件
- 在这个文件中,写入的内容将在项目启动时打印出来
- 如果想要实现艺术字的效果,可以通过这个在线网站,进行生成(个人爱好使用 big字体)
以上是关于Spring Boot# Could not transfer artifact..maven导包问题查看和修改内置Tomcat版本自定义启动Banner的主要内容,如果未能解决你的问题,请参考以下文章
spring boot:JPA org.hibernate.LazyInitializationException: could not initialize proxy [XXX#1] - n(代码
spring boot配置spring-data-jpa的时候报错CannotCreateTransactionException: Could not open JPA EntityManager
mybatis+spring boot, mapper 提示Could not autowire. No beans of … type found
spring boot Could not connect to SMTP host: smtp.xxx.com, port: 465, response: -1
微服务读取不到config配置中心配置信息,Spring Boot无法找到PropertySource:找不到标签Could not locate PropertySource: label not
Spring Boot# Could not transfer artifact..maven导包问题查看和修改内置Tomcat版本自定义启动Banner