Maven相关配置和概念
来源:互联网 发布:香港城市大学 知乎 编辑:程序博客网 时间:2024/05/16 01:13
maven参考文档
maven坐标体系
在maven中,所有的依赖都是通过坐标计算的,坐标体系有以下元素:
- groupId
代表公司或组织的域名,我们的项目全部使用com.lefu - artifactId
代表项目或工程名称,类如boss - version
项目版本,以-SNAPSHOT结尾的代表为快照版本,其他的为RELEASE版本 - packaging
依赖类型,常见的有pom,jar,war,默认为jar,非必需
maven中通过指定前面3者就能唯一定位一个依赖。
maven仓库
maven中,所有的依赖和插件都放置在仓库内,仓库有几种类型,中心仓库,代理仓库,本地仓库,另外还有一个特殊的eclipse工作区作用域。
- eclipse工作区
eclipse默认会编译项目时查询workspace中的maven项目,如果有符合的就不会去仓库里找了。 - 本地仓库
在我们开发机上h:/repo目录下的就是我们每个人的开发环境本地仓库 - 代理仓库
我们开发环境的nexus就是我们内部的代理仓库,可以进行我们内部项目的发布操作 - 中心仓库
默认随maven安装文件配置的仓库,由apache提供的中心仓库,包含大部分开源的项目依赖
maven在构建一个项目时,会按照由上至下的顺序查找pom.xml中配置的依赖,不存在的依赖会从下一级的仓库中拉取,只拉取一次。
maven基本命令
- mvn clean
只清理target编译输出目录 - mvn clean package
在构建前先进行clean清理,clean是可选操作,然后进行打包,打包结果在target目录中 - mvn clean install
在构建前清理,同上,在打包结束后,会把target目录中的结构安装到本地仓库中,这是package和install的区别。
profile定义
profile为不同环境的构建提供了支持,profile中的定义可以覆盖所有的基础定义,包括jar引用,构建插件等。
注意:因为profile的这种特性,所以在我们修改开发的配置时,也需要修改生产的对于文件。
配置profile的前提条件,需要在项目配置新建一个目录来放置生产所需的配置文件。
war项目配置profile
控制台(jar)项目配置
jar项目运行需要一些前提条件,项目结构也需要进行调整,如下:
项目pom.xml的修改,最关键的是引入了assembly插件来进行打包的动作
另外需要配置一个属性,在pom.xml中:
release.xml打包配置描述文件:
最终输出结构为:在target目录下会生成 artifactId-version.zip包,解压缩的目录结构为
脚本调整记录
2016年3月1号
控制台项目结构调整,去除对python环境的依赖,以Maven的assembly插件进行打包11月21(pom.xml和生产build.py调整)
原来的脚步会将production/conf下的配置文件打包到jar里面,而外面也会有一套,但是外面的配置文件是无效的。
在pom.xml的profile(Production)的resource标签下,增加<targetPath>../temp</targetPath>标签行。
在生产的脚步中修改 sourceconfdir = os.path.join(targetdir, 'temp')
- Maven相关配置和概念
- Maven| Maven相关概念
- Maven的使用《一》之环境配置和概念
- [Maven]5,相关配置
- maven仓库相关配置
- maven的相关配置
- 和事务相关概念
- Nexus(maven仓库) linux简易安装和相关配置
- 6.Maven聚合和继承,相关案例配置
- Hbase相关概念,配置总结
- 2.Maven相关概念及应用
- Maven相关名词、概念-解释总结
- maven常用命令及相关配置
- maven相关配置的地址
- 二次开发 maven项目配置相关
- Maven功能及相关配置
- Spring概述、框架搭建、相关概念、配置详解(XML)和配置详解(注解)
- trackbacks和其相关概念
- C#实战小技巧(一):静态类和静态成员
- properties文件使用
- 用压缩流jsp实现从Tomcat服务器下载多个文件
- 原生js写头部tab栏左右滑动支持移动端
- UVALive 4998 浅谈欧拉定理优化数位动态规划求解高阶同余方程
- Maven相关配置和概念
- Qt中UI::MainWindow与MainWindow
- Git-删除文件和还原(笔记)
- Material Design整理(八)——TabLayout
- Ocr with abbyyR
- Direct3D绘制流水线
- 解决POI解析excel出现内存溢出问题
- JavaScript实现幻灯片效果
- 使用Spring Cloud构建统一配置中心