maven 笔记2
maven 中央工厂的位置:D:\dubbo\apache-maven-3.2.5\lib D:\dubbo\apache-maven-3.2.5\lib pom-4.0.0.xml repositories标签
url 标签
maven 默认scope是compile ,只有这个范围才能进行传递依赖
maven clean 命令是清除target目录下的东西
maven 主要生命周期: compile ,test ,package,install,deploy,
具体是这样的:
maven clean 命令是清除target目录下的东西
maven compile 命令是编译src-main下的东西
maven test 其实也包括两个过程,即maven test-compile 和 maven test,主要是编译src-test下的东西,然后运行测试代码,那么
该目录下的类名有点规律,如:
1) **/Test*.java :任何子目录下所有命名以 Test 开头的 Java 类。
2) **/*Test.java :任何子目录下所有命名以 Test 结尾的 Java 类。
3) **/*TestCase.java :任何子目录下所有命名以 TestCase 结尾的 Java 类。
这样才能执行maven test-compile命令和maven test命令
当然有时候你也可以跳过测试环节,即Skip Tests
maven package 就是将src-main目录下的东西打包放在target目录下
maven install 就是将target目录下的东西安装到本地m2中
maven deploy 就是将target目录下的东西发布到maven私服,以供他人使用。
maven 隐藏的变量一般获取:${project.****} ${project.xxx} 当前pom文件的任意节点的内容
没有搭建maven私服,默认就从全球中央工厂下载,使用nexus搭建maven 私服,就可以在settings.xml配置工厂,然后激活它,那么jar包就会从私服里某些工厂里下载jar包,和全球中央工厂里下载jar包。
当然也可以为一些工厂设置镜像,那么我们从这些工厂下载jar包时,它会指向我们从镜像里下载。而不是repository里的url,而是mirror里的url.
nexus 工厂用途大概介绍:hosted类型的工厂,有三个:3rd party,Release,Snapshots,
其中,3rd party表示第三方jar,能通过上传方式放在这个工厂里。
Releases表示开发中发布版本,是通过deploy命令放到这个工厂里。
Snapshots表示开发中快照版本,是通过deploy命令放到这个工厂里。
proxy类型的工厂表示从对应的全球中央仓库里下载jar包,有Central工厂(对应全球m2中央工厂),Apache Snapshots工厂,Codehaus Snapshots工厂,
group类型的工厂表示组合工厂,有Public Repositories 工厂
1.搭建maven '私服'2.配置工厂3.为工厂配置镜像,4.通过给工厂授权,将jar发布到私服对应的工厂里去。
配置从maven私服里某工厂下载jar到本地m2,可以用<repository>标签在pom.xml里配置,也可以在setting.xml里面配置。
例如:
<repository>
<id>user-release</id>
<name>user release resp</name>
<url>http://localhost:8081/nexus/content/repositories/cms-release/</url>
</repository>
如果引用的不是本地m2jar包,可以用这种格式:
<dependency>
<groupId>org.jasig.cas</groupId>
<artifactId>cas-server-core</artifactId>
<version>3.5.0</version>
<systemPath>F:/common/jar/sso/cas-server-core-3.5.0.jar</systemPath>
<scope>system</scope>
</dependency>
maven jar包发布到私服里:
如:
pom.xml文件:
<distributionManagement>
<repository>
<id>user-release</id>
<name>user release resp</name>
<url>http://localhost:8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>user-snapshots</id>
<name>user snapshots resp</name>
<url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
settings.xml 文件授权:
<server>
<id>user-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>user-release</id>
<username>admin</username>
<password>admin123</password>
</server>
maven:有时候遇到问题,可以先尝试清除本地m2.或者看它报哪些jar,对应的到m2里面去看看。
maven 笔记2的更多相关文章
- maven笔记--持续更新
笔记: 在创建maven项目的时候,如果用到servlet的时候,需要导入包,这时候,需要导入本地仓库的jar包,即依赖包.语法如下 <dependency> <groupId> ...
- Maven笔记---超详细
显眼位置标注来源:此文章为B站课程黑马程序员Maven全套教程笔记,由本人整理. Maven简介 Maven的本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM) POM (P ...
- maven笔记
jar间接依赖: 被依赖的jar的范围要设置成compile,因发布会包含test范围依赖的jar包. 建立项目之间的联系:先在pom中设定依赖关系,然后可以引用了 .conf: C ...
- Maven 笔记
maven DOS 打包命令:maven项目 cd 进入项目根目录执行 mav clean package;
- 框架Maven笔记系列 一 基础
主题:SpringMVC 学习资料参考网址: 1.http://www.icoolxue.com 2.http://maven.apache.org/ 1.Maven解决了什么问题? Maven基于项 ...
- maven笔记-入门(helloWorld)
maven: pom.xml:文件 groupId,artifactId,Version定义了一个项目的基本坐标 groupId:定义了项目属于哪个组,往往与项目所在的组织和公司有关 artifact ...
- Maven笔记(二)仓库
1.仓库布局 任何一个构件都有其唯一的坐标,根据这个坐标可以定义其在仓库中的唯一存储路径,这就是Maven的仓库布局方式 路径与坐标的对应关系为:groupId/artifactId/version/ ...
- Maven笔记(一)
1. 坐标 Maven坐标为各种构件引入了秩序,任何一个构件都有必须明确定义自己的坐标,而一组Maven坐标是通过一些元素定义的,它们是groupId, artifactId, version, pa ...
- maven笔记学习
一.修改setting.xml文件中的镜像 在导入他人项目或者在导入项目时,我们会出现在项目中不能识别maven配置的库文件的情况那么我们可以重新下载本地库, 首先我们可以修改我们安装的maven环境 ...
- maven笔记-将本地jar包打包进可执行jar中
参考资料:http://www.cnblogs.com/richard-jing/archive/2013/01/27/Maven_localjar.html 使用本地jar <dependen ...
随机推荐
- swoole执行外部程序称为进程
<?php $child = new \Swoole\Process(function(\Swoole\Process $process){ $process->exec('/usr/lo ...
- win10开机启动文件夹
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
- xpath取末尾
from lxml import etree html = ''' <!DOCTYPE html> <html lang="en"> <head> ...
- HTML 5标签中<button>的新属性
<button> 标签HTML5 中的新属性 属性 值 描述 autofocus autofocus 规定当页面加载时按钮应当自动地获得焦点. disabled disabled 规定应该 ...
- QJsonObject 遍历
遍历QjsonObject方式 方式一 QJsonObject::const_iterator it = l_obj.constBegin(); QJsonObject::const_iterator ...
- springboot入门系列(三):SpringBoot教程之RabbitMQ示例
SpringBoot教程之RabbitMQ示例 SpringBoot框架已经提供了RabbitMQ的使用jar包,开发人员在使用RabbitMQ的时候只需要引用jar包简单的配置一下就可以使用Rabb ...
- 网络爬虫养成记(第一天)——安装Scrapy
古人云:工欲善其事,必先利其器.在网络爬虫中,Scrapy无疑是一把利器,那么,今天我们来谈谈Scrapy的安装. 幸运的是,Scrapy已经支持Python3.4+了,也就是说,我们可以在pytho ...
- python第二章:控制流
变成实际上是一个过程的提现,每个过程都是有多个流程块组成. 比如:判断是否下雨的过程 1.布尔值 在第一章最后举例了比较操作后,最终返回的结果 True or False True 和 False是一 ...
- 在git下如何创建分支
创建main分支下的远程分支dev: 直接输入dev,就可以创建在main分支下的远程分支dev了 在dev下创建devdev
- 配置通过Web网管登录交换机
组网图形 图1 通过Web网管登录交换机组网图 通过Web网管登录交换机简介 Web网管是一种对交换机的管理方式,它利用交换机内置的Web服务器,为用户提供图形化的操作界面.用户可以从终端通过HTTP ...