笔者进行性能测试时,碰到如下问题

性能测试代码编写,调试通过之后。使用cmd进入项目根目录,意图打包导出项目中所有的依赖包,以便导入至jmeter工具中

cmd中使用命令:mvn dependency:copy-dependencies -DoutputDirectory=lib 。具体报错信息如下:

根据报错信息可看出,四个jar包没有可用的dependency信息。随后返回项目中查看四个jar包的dependency,发现一切正常。再次运行了项目,发现能够正常运行,并未任何报错信息。
为了进一步排除代码问题。将代码在另外一台机器执行,执行命令:mvn dependency:copy-dependencies -DoutputDirectory=lib  则完全ok

经过以上操作后,通过分析,基本把问题定位在maven工具上。因为相同代码,不同机器上的执行结果不同,那么只能是maven工具问题。

然后比对了两台机器上的maven,发现版本,配置文件均一致。

这让我陷入了思考:代码,工具均一致,结果却完全不同。根据报错信息能看出,输出依赖包时,maven并未找到有效的jar包信息。那么maven识别有效的jar包信息,是根据配置文件来的,但两台机器的配置文件完全一致。那么很有可能,就是配置文件的路径问题

想到这里,使用mvn -X查看debug日志,发现maven在读取配置文件时,优先读取maven环境变量配置的那个settings配置文件,而这个配置文件就是在%MAVEN_HOME%\conf\目录下。对比了两台机器,发现出错的那台机器上,安装包下的/conf/settings.xml文件中是最原始的文件(即没有任何配置信息),而IDEA中配置的是D:maven/settings.xml。至此,问题找到

解决方案很简单,把可用的D:maven/settings.xml拷贝至%MAVEN_HOME%\conf\下,替换掉原来不可用的settings.xml,再次执行mvn dependency:copy-dependencies -DoutputDirectory=lib。执行成功

后记:

1.maven使用命令在输出依赖包时,有先寻找的是%MAVEN_HOME%\conf\settings.xml,当这个文件不存在或者是无效配置时,则再寻找 C:\Users\XXX\.m2\settings.xml,如果还是无效或不存在,则报错

2.maven在IDEA中则根据配置来。默认是C:\Users\XXX\.m2\settings.xml。实际上很多使用人员都会修改该路径到其他目录

建议:要么直接使用默认路径:C:\Users\XXX\.m2\settings.xml;要么使用%MAVEN_HOME%\conf\settings.xml。

3.至于本地仓库位置,可根据自己喜好,配置在settings.xml中即可

The pom for XXX is missing,no dependency information available的更多相关文章

  1. Maven打包报错:[WARNING] The POM for xxx is missing, no dependency inform

    maven install 或 package 时 ,执行警告报错: [WARNING] The POM for com.xx-base:jar:1.0 is missing, no dependen ...

  2. The POM for XXX:jar:${com.ld.base.service.version} is missing, no dependency information available

    最近有个jar改了名字后,有个依赖它的工程死活引用的是老名字,导致打包的时候出错,如下所示: [INFO] ---------------------------------------------- ...

  3. The POM for cn.e3mall:e3mall-common:jar:0.0.1-SNAPSHOT is missing, no dependency information available

    [WARNING] The POM for cn.e3mall:e3mall-common:jar:0.0.1-SNAPSHOT is missing, no dependency informati ...

  4. Failed to execute goal on project MakeFriends: Could not resolve dependencie The POM for .chengpai.jtd:jtd-service-api:jar:1.0-SNAPSHOT is missing, no dependency information available

    本笔者在学习maven的基础,然后建立了一个maven的项目,然后想对其进行依赖操作,pom.xml进行依赖操作时候出现了这样的错误,说是找不到这个依赖的包,但是事实上已经导入了这个包. 同时,也在m ...

  5. The POM for ... is missing, no dependency information available

    今天在重温淘淘商城的项目,准备用idea重写次,换个bootstrap的前端框架,但是在用idea构建maven项目后编译时却报错了: 经再三确认,common工程自身并没有任何问题,引用这个工程的地 ...

  6. files list file for package 'xxx' is missing final newline

    #!/usr/bin/python # 8th November, 2009 # update manager failed, giving me the error: # 'files list f ...

  7. The POM for XXX is invalid, transitive dependencies (if any) will not be available解决方案

    今天,某个开发的环境在编译的时候提示警告The POM for XXX is invalid, transitive dependencies (if any) will not be availab ...

  8. Description Resource Path Location Type Missing artifact com.********:framework:jar:1.0.2 pom.xml /项目名 line **** Maven Dependency Problem

    问题具体描述如下图所示: 对于该问题本人是这么解决的. 在window下[Preferences]目录找到[Maven]下的[usersetting] 查看local repository 里面的路径 ...

  9. maven编译问题之 -The POM for XXX is invalid, transitive dependencies (if any) will not be available

    问题一: 把父工程tao-parent install 到maven本地仓后,接着install tao-common工程,然后报错 报错信息如下: [WARNING] The POM for com ...

随机推荐

  1. Jenkins安装Slave节点

    在系统管理----节点管理下 创建完成后会出现slave节点启动的命令,下载agent.jar,然后启动服务 Master-slave相当于Server和Agent,master管理job和slave ...

  2. ECU 自动化生产测试系统

    概述 ECU(Electronic Control Unit) 是现代车辆中最重要的部件之一,其稳定性.可靠性对车辆安全性的影响至关重要.如何保证ECU 生产质量和效率.如何在生产过程中对ECU 进行 ...

  3. vue 单向数据流

  4. CF480E Parking Lot(two-pointers + 单调队列优化)

    题面 动态加障碍物,同时查询最大子正方形. n,m≤2000n,m\leq2000n,m≤2000 题解 加障碍不好做,直接离线后反着做,每次就是清除一个障碍物. 显然倒着做答案是递增的,而且答案的值 ...

  5. 使用Spring PropertyPlaceholderConfigurer 配置中文出现乱码的解决方法

    在使用org.springframework.beans.factory.config.PropertyPlaceholderConfigurer 读取配置文件时,发现对于中文的处理会出现乱码现象,比 ...

  6. MySQL Multi-Range Read(MRR 索引多范围查找) 原理与解析

    原理: 如果基表很大,数据没有被缓存,在二级索引上使用范围扫描读取行可能会导致大量的随机磁盘访问.使用Multi-Range Read新特性,mysql可以减少对磁盘的随机读的次数:首先,mysql只 ...

  7. linux系列(二十二):tar命令

    1.命令格式 tar[必要参数][选择参数][文件] 2.命令功能 用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的 3.命令参数 必要参数: -A 新增压缩文件到已存在的压缩 - ...

  8. js 的 二进制

    1. 整数 例如十进制的 30 30/2  .......... 0 15/2 ............ 1 7/2 ............ 1 3/2 .............. 1 1/2 . ...

  9. codeforces425C

    http://codeforces.com/contest/425/problem/C 题意:两数列a[],b[],进行若干轮操作,每次操作花费e, 将a的一个前缀和b的一个前缀(两前缀的最后一个数字 ...

  10. 去掉BigDecimal类型变量小数点后多余的零

           业务背景:mysql中A表中的B字段的类型是decimal类型,小数位数是三位,某一条数据的值是3000000,在Java中查询出来的结果是3000000.000,这样显示在页面中不太好 ...