首页 > 解决方案 > 使用maven(cmd:maven -T 1C clean install)编译项目时,下载的依赖jar大小为0kb

问题描述

用maven编译项目时,cmd是“maven -T 1C clean install”,碰巧下载的依赖jar大小为0kb,但奇怪的是,整个项目编译成功。终于可以拿到应用jar了,但是应用jar包解压后没有class文件。

项目由多个子模块组成,分散在多个Jenkins slave(Linux CentOS)节点,并发编译。这些 Jenkins 从节点共享 Maven 仓库目录。当子模块 a 和 B 都依赖第三方 xxx.jar 时,模块 a 和 B 会在编译时同时下载依赖。结果是下载的jar是0kb,但是maven会误以为修改后的jar已经下载到本地了,最后,编译也可以成功,但是模块a和模块B输出的jar文件中没有class文件。我的问题是xxx.jar的大小是0kb,会不会是并发下载造成的?还是Linux中并发文件写入的问题?maven有办法解决下载的依赖jar大小为0kb的问题吗?

例如* 当模块a依赖下面的jar时,模块a仍然可以编译成功,但是模块a的/target/class目录下没有生成class文件,解压后a.jar也没有class文件。

标签: javamavenjenkinsconcurrencycompilation

解决方案


推荐阅读