背景
最近很多saas端的银行客户由于安全要求,将系统从云端部署到行内环境,但是很多银行的部署都需要协调行内的人去拷贝文件,有时候需要等很久才能上传上去,这样对于我们这种没有非常大量测试的项目团队来说非常的耗费时间,并且有时间行内的数据和需求说变就变,这就要求我们随时修改一些代码,但是走变更需要很长的流程,所以我就在想可以直接在linux服务器上修改代码 ,这样对于一些小改动的地方就可以随时支持了,所以我们需要搭建一个maven环境就OK了,将源代码放上去就可以了。
1.前言
这里,已经提前下载并安装好JDK 。如果没安装,先安装JDK。
2. 安装Maven
2.1 下载
2.2 解压
# tar -zxvf apache-maven-3.3.9-bin.tar.gz
# mv apache-maven-3.3.9 /usr/local/maven3
2.3 配置系统maven环境
# vim /etc/profile
MAVEN_HOME=/usr/local/maven3 export MAVEN_HOME export PATH=${PATH}:${MAVEN_HOME}/bin
# source /etc/profile
2.4 验证是否成功
# mvn -v
3. 建立maven仓库
3.1 建立一个文件夹保存常用的包
假设路径为: /home/sailing/DAG_web/repo
3.2 配置用户范围settings.xml 文件
# vim /usr/local/maven3/conf/settings.xml
设置仓库路径:
<!-- localRepository | The path to the local repository maven will use to store artifacts. | | Default: ${user.home}/.m2/repository <localRepository>/path/to/local/repo</localRepository> --> <localRepository>/home/sailing/DAG_web/repo</localRepository>
提示:我是将本地idea使用的maven setting.xml 文件直接覆盖了原有的setting.xml文件,因为本地的很多镜像源地址都是修改好的,然后只需要修改仓库地址就行了。
3.3 在终端运行命令将常用的包从maven中央仓库下载文件到本地:
# mvn help:system
打开/home/sailing/DAG_web/repo目录会发现多了很多文件
4. jar包编译打包
Maven最主要的命令:mvn clean compile、mvn clean test、mvn clean package、mvn clean install。执行test之前是会先执行compile的,执行package之前是会先执行test的,而类似地,install之前会执行package。
mvn clean compile:clean告诉Maven清理输出目录target/,compile告诉Maven编译项目主代码
mvn clean test:执行src/test/main下面的test方法,在执行测试之前,会自动执行项目主资源处理、主代码编译、测试资源处理、测试代码编译等工作
mvn clean package:打包,使用默认打包类型jar,在打包前会执行编译、测试等操作。生产的jar文件位于target下面
mvn clean install:将项目输入的jar安装到了Maven本地仓库中
5.1 切换到pom.xml目录下,编译打包
# mvn clean && mvn compile && mvn package //偷懒,这里一行命令
如果有问题 就分开执行 如果需要看到相信错误信息 在每命令后面这家 -e
我们现在基本都是父子工程,所以我们需要在父pom.xml所在目录下面,执行上述命令。
这样我们就可以愉快的在linux服务器上写代码了,当然也充分考验我们的基本技能了,在习惯了各种ide优美提示的环境下,不知道还能手写几行代码,这玩意挺费手的。