IDEA maven 使用
maven 仓库配置
maven 文档结构配置
maven根目录/conf/settings.conf 镜像配置
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/central</url>
</mirror>
仓库位置配置 ctrl shift a +“maven”
可选,自动导入依赖Setting>Build, Execution, Deployment>Build Tools>Maven>Importing>勾选import maven project automatically
maven项目搭建
通过骨架创建(create from archetype)
maven-archetype-quickstart (普通java项目)
maven-archetype-webapp (javaweb项目)
maven项目使用脚手架搭建
不使用模板创建maven
不考虑项目完整,直接创建maven,使用quickstart骨架创建(由于springboot自动war打包,自带tomcat)
使用Spirng Initializr(基于Springboot)模板创建maven
考虑项目完整性,使用Spring Initializr(初始化器)创建
maven项目自动生成一个App.class,这个类里面只有一个psvm(SB注解需要自己添加)
springinitializr 会自动创建启动类(带有sb的注解)
可以选择使用SB官方或第三方的脚手架初始化项目
mvnw等一类多出来的文件都是可以删掉的
可以直接搜索选择需要的启动器,将其添加到pom.xml
pom.xml自带<parent></parent>,可以直接更改其版本号切换(maven需要手动复制 ,有的版本不能直接写"2.0.0",要写"2.0.0.RELEASE")
文件结构上还自动创建了 resources
//阿里脚手架(根据带宽条件选择)
https://start.aliyun.com
基于Springboot的maven项目模板创建遇到的问题
有时候,项目一创建完成就报src/test包下的SB启动类缺少jupiter依赖
反正如果不需要在test包下操作的话,直接把这个启动类给删了就完事了
启动类必须和要初始化的类同在一个父包下,否则将无法读取到
maven项目强制刷新依赖
idea有时候会出问题:导入依赖坐标后,idea仍不自动刷新依赖(idea已设置自动导入依赖)
maven项目打包
1.确认pom.xml是否配置了 maven打包插件
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
2.打开maven 工具窗口>Lifecycle
3.如果需要跳过测试程序,选中test,并点击"闪电"
4.右键"package">run maven bulid,即可
控制台会输出jar包的输出位置
5.运行
cmd>java -jar xxx.jar
遇到的问题
挺操蛋的一个问题:无论我怎么重载依赖,怎么清理缓存,就是有两个jdbc包它就是报不存在
1.检查mvn配置是没有问题的、网络也是没有问题的
2.检查maven仓库的文件夹,这两个包的路径也是刚创建的
3.但是进入到目录里面,发现只有几个.lastUpdated文件,没有Jar!!!
=> 是这两个包的问题(大厂的包果然不一样哦:microsoft.sqljdbc、oracle.ojdbc),手动下载这两个包并置于对应的Mvn仓库的路径下
=> 我还访问了mvn的官方仓库,里面有说明,oracle的ojdbc已经迁移出去了,不再由mvn维护...