Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven依赖性分析报告了一些;“误报”;_Maven - Fatal编程技术网

Maven依赖性分析报告了一些;“误报”;

Maven依赖性分析报告了一些;“误报”;,maven,Maven,我被要求优化一个大型maven项目的依赖项,即查找并删除该项目现在使用的所有依赖项。因此,我选择了插件maven依赖性分析: <plugin> <artifactId>maven-dependency-plugin</artifactId> <version>3.1.1</version> <dependencies> <dependency&

我被要求优化一个大型maven项目的依赖项,即查找并删除该项目现在使用的所有依赖项。因此,我选择了插件maven依赖性分析:

  <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.1.1</version>
        <dependencies>
            <dependency>
                <groupId>org.apache.maven.shared</groupId>
                <artifactId>maven-dependency-analyzer</artifactId>
                <version>1.11.1</version>
            </dependency>
        </dependencies>
    </plugin>

maven依赖插件
3.1.1
org.apache.maven.shared
maven依赖性分析器
1.11.1
要输出未使用的maven依赖项的报告,请执行命令
mvn dependency:analyze-dignonencompile=true
。我发现在“Unused declared dependencies found”部分下报告的大多数依赖项都可以被删除而不会出现任何问题,但是有一些依赖项的删除会导致编译错误。我想知道为什么在“未使用的已声明依赖项的发现”部分中包含这些依赖项,以及我是否遗漏了一些东西


感谢您的关注。

了解此机制的工作原理非常重要:

Maven使用对象WebASM框架来分析原始字节码。它遍历所有类,然后构建这些引用的所有类的列表

但是您可以以不同的方式使用类,通常使用反射(还有一些东西没有编译到类文件中:),而这种机制无法检测到这一点