我有一个由多个项目组成的webapp。我们使用Ant进行汇编,我们怀疑/ java目录中的一些jar是不需要的。
为了找到不需要的罐子,我跑了
mvn dependency:analyze -DignoreNonCompile
获取每个项目的未使用声明的jar列表。但是,一个项目未使用的jar可能仍被另一个项目使用。为了检查这个,我跑了
mvn dependency:tree
获取所有项目的依赖结构。
使用这些命令中的信息,我现在将使用一个脚本来检查jar是否存在,以便在声明它的所有项目中都不使用它。对于编译范围的jar,这是一种合理的方法吗?其他范围的罐子怎么样?
感谢。
答案 0 :(得分:0)
但是,仍然可以使用一个项目未使用的jar 另一个。
我建议将所有需要的依赖项声明为直接依赖项,而不是依赖于可能在较新版本中删除的传递依赖项。
在公共父POM的DependencyManagement部分中定义依赖项的版本,并在声明依赖项时稍后省略这些版本。像这样,您可以确保在所有项目中使用相同版本的依赖项。