我最近加入了公司,需要添加jmh测试。我创建了一个测试项目,并添加了简单的jmh测试,它运行。但当我移动我的测试,依赖关系和maven-shade-plugin到我的工作项目-jmh测试是不可见的测试。我注意到,没有类下生成的target/generated-source/annotations什么是jmh至关重要的。我应该采取什么步骤来调查这个问题?我还注意到有其他的注解处理库被使用。我想知道这是否可能是一些冲突的原因。
maven-shade-plugin
target/generated-source/annotations
5t7ly7z51#
发布解决方案:我的项目在maven-compiler-plugin中有annotationProcessorPaths,所以任何新的预处理器都应该添加到这个路径中
maven-compiler-plugin
annotationProcessorPaths
vjhs03f72#
下面是它的做法:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <annotationProcessorPaths> <!-- WORKAROUND: https://issues.apache.org/jira/browse/MCOMPILER-369 --> <path> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-generator-annprocess</artifactId> <version>${jmh.version}</version> </path> </annotationProcessorPaths> </configuration> </plugin>
2条答案
按热度按时间5t7ly7z51#
发布解决方案:我的项目在
maven-compiler-plugin
中有annotationProcessorPaths
,所以任何新的预处理器都应该添加到这个路径中vjhs03f72#
下面是它的做法: