maven相关(1)

1 maven 按照
需要配置java环境变量 设置把该目录追加到环境变量的path中
检查是否成功 mvn -v
2 设置本地仓库地址
修改settings.xml文件 xx指定仓库的路径

  1. bin中存放可执行的二进制文件
  2. conf存放settings.xml文件
  3. lib 运行maven所依赖的jar包

3 maven的约定

  1. src/main/java 存放项目的java文件
  2. src/main/resources 存放项目的资源文件,如spring,hibernate的配置文件
  3. src/test/java 存放所有的测试的java文件
  4. src/test/resources 存放测试用的资源文件
  5. target 项目输出位置
  6. pom.xml 文件

4 pom文件相关

  1. groupId 这是项目组的编号 这在组织或项目中通常是独一无二的
  2. artifactId 这是项目的ID 这通常是项目的名称模块的名称
  3. version 这是项目的版本 与groupId一起使用 artifact在存储库中用于将版本彼此分离
  4. packaging 默认jar war web形式 pom表示父pom 定义当前项目的打包方式
  5. mvn compile 编译源代码
  6. mvn test 运行测试-测试src-test下 junit
  7. mvn package 打包 packaging设置打成jar还是war compile test
  8. mvn install 包含mvn compile mvn package 然后上传到本地仓库 deploy上传到远程仓库

5 仓库的分类

  1. 本地仓库
  2. 远程仓库 私服 中央仓库 镜像 set文件 mirror 从上往下找

下载maven
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
先去本地查找-私服-远程仓库(会把jar放入私服)
maven scope

  1. test 在测试环境 /test
  2. compile 默认 编译运行都会生效 src/main /test
  3. provided 编译的时候提供 打包的时候不生效servket tomcat有可以不使用
  4. runtime 运行时范围 编译不生效打包生效 mysql驱动

0.0.1-SNAPSHOT
0 主版本号
0 项目分支
1 分支变更细节
maven
可以 通过新建一个maven pom工程和其他项目平级 然后在modules中引入 但是要加入…/工程名
同级别如果一个包引入两个maven 谁在前面引用谁
多层依赖层级短的优先
maven 私服搭建

wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.5-02-bundle.tar.gz --no-check-certificate

tar -zxf nexus-2.14.5-02-bundle.tar.gz 

mkdir nexus
//安装的原文件 程序文件
mv nexus-2.14.5-02 nexus
//具体的仓库
mv sonatype-work/ nexus

#在环境变量当中设置启动用户
shell> vim /etc/profile
#添加profile文件。安全起见不建议使用root用户,如果使用其它用户需要加相应权限
export RUN_AS_USER=root
#配置文件
nexus.properties

application-port=8081
application-host=0.0.0.0
//程序运行地址
nexus-webapp=${bundleBasedir}/nexus
nexus-webapp-context-path=/nexus
# Nexus section 
#仓库地址
nexus-work=${bundleBasedir}/../sonatype-work/nexus
runtime=${bundleBasedir}/nexus/WEB-INF

#启动
shell> ${nexusBase}/bin/nexus start
#停止
shell> ${nexusBase}/bin/nexus stop

#查看日志 logs
tail -f wrapper.log 
#远程访问 要关闭防火墙
http://192.168.100.173:8081/nexus/#welcome
#登录
用户名:admin
密码:admin123

仓库类型 group hosted proxy 其他的是maven1中的
group 分组 一个group分组可以把所有的仓库涵盖进来 分组仓库 包含其他就不用配置多个url了
hosted 私有化仓库 自己程序的jar
           3rd part第3方仓库 公网上没有但是使用的
           Snapshots 本地项目的快照仓库
           Releases 发布的正式版本仓库
proxy 第3放下载的 公网上发布的文件 spring mysql-drive
``Central 中央仓库
  Apache Snapshots Apache 中央仓库
 系统如何防访问仓库 项目里面配置地址
 配置站点 可以配置在setting文件中
 配置下载的地址 默认releases 的资源不可以下载snapshots包反过来则可以可以通过配置设置
 		<repository>
			<id>nexus-releases 没有特别含义</id>
			<name>Nexus Release Repository 没有特别含义</name>
			<url>http://maven.weihuamd.com:8081/nexus/content/repositories/releases/</url>
		</repository>
		<repository>
			<id>nexus-snapshots</id>
			<name>Nexus Snapshot Repository</name>
			<url>http://maven.weihuamd.com:8081/nexus/content/repositories/snapshots/</url>
		</repository>
<repository>
			<id>nexus-center没有特别含义</id>
			<name>Nexus center Repository 没有特别含义</name>
			<url>http://maven.weihuamd.com:8081/nexus/content/repositories/center/</url>
		</repository>

	</repositories>
还可以通过镜像去下载


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值