我为什么要用Maven?
用JMeter测试的时候,需要借助IDEA额外的写一些函数之类的,借助Maven打包成jar很方便,˶⚈Ɛ⚈˵呵呵~
maven介绍 https://www.cnblogs.com/whgk/p/7112560.html
将maven web项目打包成war直接部署到tomcat https://blog.csdn.net/zhengholien/article/details/77184486
0、Maven简介
作用:通过pom.xml文件的配置获取jar包,而不用手动去添加jar包
maven项目就是在java项目和web项目的上面包裹了一层maven
1、下载Maven
1.打开Maven官网下载页面:http://maven.apache.org/download.cgi
下载:apache-maven-3.5.0-bin.tar.gz
2.解压下载的安装包到某一目录,比如:/Users/xxx/Documents/maven
2、配置环境变量
打开terminel输入以下命令:
vim ~/.bash_profile 打开.bash_profile文件,在次文件中添加设置环境变量的命令
export M2_HOME=/Users/xxx/Documents/maven/apache-maven-3.5.0
export PATH=$PATH:$M2_HOME/bin
添加之后保存并推出,执行以下命令使配置生效:
source ~/.bash_profile
3、查看配置是否生效
1、输入:mvn -v命令
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: /Users/xxx/apache-maven-3.6.0
Java version: 1.8.0_171, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.14", arch: "x86_64", family: "mac"
4、Maven重要概念--仓库
仓库:本地仓库、第三方仓库(私服)、中央仓库
本地仓库:默认在/Users/xxx/.m2/repository
一般会修改本地仓库位置 ,新建目录,修改配置文件位置/Users/xxx/apache-maven-3.6.0/conf/setting.xml,之后每次从网上下载了jar包就放在该目录下。
第三方仓库(私服)
一般是由公司自己设立的,只为本公司内部共享使用,私服可以使用局域网。保证项目开发时,项目所需的jar包都从该仓库拿,每个人版本一样。连接私服,需要单独配置
中央仓库
Maven内置了远程公用仓库:http://repo1.maven.org/maven2
这个公共仓库是由Maven自己维护,里面有大量的常用类库,并包含了世界上大部分流行的开源项目构件。目前是以java为主。需要外网
工程依赖的jar包如果本地仓库没有,默认从中央仓库下载
5、常用maven命令
[1] mvn clean:清理 删除target目录,将class文件等删除
[2] mvn compile:编译主程序,将src/main/java目录的java源代码编译生成class
[3] mvn test-compile:编译测试程序 将src/test/java目录编译
[4] mvn test:执行测试
[5] mvn package:打包 打包成jar或者war
[6] mvn install:安装 将压缩文件(jar或者war)上传到本地仓库,以让其它项目依赖
[7]mvn deploy:将压缩文件上传到私服
6、项目结构
maven java项目结构
pom.xml 核心配置,项目根下
src/main/java java源码目录
src/main/resources java配置文件目录
src/test/java 测试源码目录
src/test/resources 测试配置目录
target 输出目录
maven web项目结构
pom.xml 核心配置
src/main/java java源码
src/main/resources java配置
src/main/webapp myeclipse web项目中 WebRoot目录
|-- WEB-INF
|-- web.xml
src/test 测试
target 输出目录
七、新建maven web工程
勾选Create from archetype,如果是java项目,可以选择maven-archetype-quickstart,如果是web项目,可以选择maven-archetype-webapp
archetypeCatalog表示插件使用的archetype元数据,不加这个参数时默认为remote,local,即中央仓库archetype元数据,由于中央仓库的archetype太多了,所以导致很慢,指定internal来表示仅使用内部元数据。
在 Run菜单下Edit Configurations
添加tomcat server,前提是已经安装了tomcat
在Deployment下添加artifact
八、遇到的问题
1.tomcat application server libraries not found
重新安装tomcat后在idea中配置tomcat服务出现该问题,输入tomcat目录后出现该提示,排查似乎是tomcat目录的文件权限问题。
解决办法:
将Tomcat文件夹内的文件置为777,sudo chmod -R 777 Tomcat/
2.idea配置Tomcat Deployment没有Artifact选择
1、先在maven project里点击package生成target文件夹,而.war文件在target文件夹中。
2、在File的Project Structure选择生成的.war文件,这个时候点击idea左上角的File,选择 Project Structure...
点击Artifacts,右边+一个Web Application:Archive,并将其命名设置与刚才新生成的target文件夹下的.war文件同名。我这里是Hello
3、完成Tomcat配置
所以借助Maven可以很方便的将项目打包成jar或者war,war包还能直接布署到tomcat服务器上面
回到开始,当你在IDEA中写好了代码,借助Maven打包成JAR后,怎么在JMeter中使用,参考另一篇文章:https://mp.csdn.net/postedit/84879226