使用maven在多个项目中查找未使用的(编译范围的)jar文件?

时间:2014-03-27 18:13:46

标签: java eclipse maven ant jar

我有一个由多个项目组成的webapp。我们使用Ant进行汇编,我们怀疑/ java目录中的一些jar是不需要的。

为了找到不需要的罐子,我跑了

mvn dependency:analyze -DignoreNonCompile

获取每个项目的未使用声明的jar列表。但是,一个项目未使用的jar可能仍被另一个项目使用。为了检查这个,我跑了

mvn dependency:tree 

获取所有项目的依赖结构。

使用这些命令中的信息,我现在将使用一个脚本来检查jar是否存在,以便在声明它的所有项目中都不使用它。对于编译范围的jar,这是一种合理的方法吗?其他范围的罐子怎么样?

感谢。

1 个答案:

答案 0 :(得分:0)

  

但是,仍然可以使用一个项目未使用的jar   另一个。

我建议将所有需要的依赖项声明为直接依赖项,而不是依赖于可能在较新版本中删除的传递依赖项。

在公共父POM的DependencyManagement部分中定义依赖项的版本,并在声明依赖项时稍后省略这些版本。像这样,您可以确保在所有项目中使用相同版本的依赖项。