maven

Posted 568353087

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven相关的知识,希望对你有一定的参考价值。

mvn dependency tree可以查看依赖。但是它好像在每个不同的文件夹执行一次的时候,就要重新下载一大堆的文件。本来下载都很慢很慢,换了阿里源以后快多了。

查看依赖

(1)maven clean。

对项目进行清理,清理的过程中会删除删除target目录下编译的内容。

(2)maven compile。

编译项目源代码。

(3)maven test。

对项目的运行测试。

(4)maven packet。

可以打包后的文件存放到项目的 target 目录下,打包好的文件通常都是编译后生成的class文件。

(4)maven install。生成jar包并且搭载到maven里。在此之前要先执行maven clean。如果只是普通的打包直接用maven build就可以了

在本地仓库生成仓库的安装包可以供其他项目引用,同时打包后的文件存放到项目的 target 目录下。

对项目打包有三种打包方式,pom打包,jar包和war包。打包方式在pom.xml文件中进行指定。

pom工程一般是聚合工程,代表父工程,负责管理jar包的版本、maven插件的版本等,主要做统一的依赖管理。

jar包就是普通的打包方式,可以是pom工程的子工程。

war包的都是web工程,是可以直接放到tomcat下运行的工程。

打成pom包和jar包的工程在新建的时候可以不需要制定maven项目的原型,达成war包的项目需要制定maven项目原型,指定的原型通常为maven-archetype-webapp,代表web项目。

其中最常用的就是maven clean和maven install。

maven在项目中还是很有用的。关于maven的基本用法就介绍到这里。

driver-class-name: 

com.mysql.jdbc.Driver 是 mysql-connector-java 5及5之前的, 
com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6及6之后的的,

 

 

Druid是一个JDBC组件

 

<dependency>
 2             <groupId>org.springframework.boot</groupId>
 3             <artifactId>spring-boot-starter-web</artifactId>  //有
 4         </dependency>
 5 
 6         <dependency>
 7             <groupId>org.mybatis.spring.boot</groupId>
 8             <artifactId>mybatis-spring-boot-starter</artifactId>   //没有
 9             <version>2.0.1</version>
10         </dependency>
11 
12         <dependency>
13             <groupId>mysql</groupId>
14             <artifactId>mysql-connector-java</artifactId>   //有
15             <scope>runtime</scope>
16         </dependency>
17 
18         <dependency>
19             <groupId>com.alibaba</groupId>
20             <artifactId>druid</artifactId>  //druid-spring-boot-starter
 1 server:
 2   port: 8080
 3   servlet:
 4     context-path: /
 5 spring:
 6   datasource:
 7     username: root
 8     password: 123456
 9     url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=UTC
10     type: com.alibaba.druid.pool.DruidDataSource //没有
11     driver-class-name: com.mysql.cj.jdbc.Driver  //不包含“cj”


properties和yml 的区别

application.properties 配置文件在写的时候要写完整,如:

spring.profiles.active=dev
spring.datasource.data-username=root
spring.datasource.data-password=root

在yml 文件中配置的话,写法如下:

  

spring:
profiles:
active: prod
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test
username: root
password: root

maven仓库地址查看:
项目右键maven,open settings.xml可以查看仓库的地址,如果要使用私有库,就在这里配置私有库。注意,如果代码是从git中下载下来的,他打包的时候没有把私有库的配置打包进去,maven的加载就会报错。
仓库配置成功后,之前没能成功下载的jar包也会重新下载到本地电脑上C:\\Users\\囧囧\\.m2\\repository\\ 一般都是在这个位置(具体地址在哪里配置的我不知道)

父项目:
pom文件中配置的parent,是在settings文件的仓库里面找的,它会下载所有父项目里面原有的东西。如果仓库的配置不对,找不到父项目,maven clean都会无法执行。

打jar包的方法:
1、确认git更新(该操作不会覆盖掉你的代码,但是还是先备份一下项目比较保险)
2、maven clean
3、闪电小图标关掉test打叉叉
4、maven pakage
5、项目右键 show in explorer快速打开文件对应的文件路径,打的包一般在taget文件夹
6、本地试运行项目,路径上输入cmd回车快速进入cmd的操作路径, java -jar 名字可执行jar包。试过试运行能打开就可以放心地把jar上传到服务器了

将本地项目推送到git
1、选择git的安装路径

 

 


2、创建本地仓库 注意,如果有父项目此时要选择父项目更方便,要不然不知道哪里会报错

 

 

 现在我点完以后所有类名都变成了红色。。。。。

 3、commit添加到本地仓库

4、push添加到远程仓库

 

分支管理。‘’

Master分支是自动创建的

Head指针一般指向当前的版本,也可以进行变更

在没有提交之前所有分支都是指向同一个代码的,各分支提交后才会把指向的代码分开。分开后也可以重新再选择合并。合并时先切换到最终要合并到的分支,再选择要合并哪个分支。

在分支中做出修改的时候需要commit 如此才会不会影响到master。只要不push别人都是看不到的。如果切换分支前没有commit,系统就会提示是否接受修改,如果接受了以后分支修改的代码就直接同步过来了的,如果在此基础上做修改回退会比较难。

idea查看jar源码

https://blog.csdn.net/dataiyangu/article/details/89553803

这样查看是没办法像项目一样运行的,只是能看到而已,也没办法全局搜索字符

依赖文件的位置

一般都在reposory中同名文件夹里面,但是spring比较特殊,不知道为什么

 

以上是关于maven的主要内容,如果未能解决你的问题,请参考以下文章

Spring+SpringMVC+MyBatis+Maven框架整合

关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段

如何在 Apache Felix maven-bundle-plugin 中设置 Provide-Capability 标头?

Maven FTP部署:无法创建目录

如何从詹金斯访问maven属性?

向小军 “小黑” 正式加入 Maven Skateboards