如何将 maven 插件转换为 gradle 插件(maven-surefire-puglin)?
Posted
技术标签:
【中文标题】如何将 maven 插件转换为 gradle 插件(maven-surefire-puglin)?【英文标题】:How to convert a maven plugin into a gradle plugin (maven-surefire-puglin )? 【发布时间】:2020-05-13 16:51:10 【问题描述】:我正在尝试使用此插件,但使用 gradle:
<properties>
<aspectj.version>1.8.10</aspectj.version>
</properties>
<dependencies>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-junit4</artifactId>
<version>LATEST_VERSION</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<argLine>
-javaagent:"$settings.localRepository/org/aspectj/aspectjweaver/$aspectj.version/aspectjweaver-$aspectj.version.jar"
</argLine>
<properties>
<property>
<name>listener</name>
<value>io.qameta.allure.junit4.AllureJunit4</value>
</property>
</properties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>$aspectj.version</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
相反,如果不是真的有必要(因为 gradle 有任何更简单的方法可以继续),有人可以提供有关如何做的线索吗?
【问题讨论】:
对此的简单回答:不起作用,因为 Gradle 是用 (Groovy/Kotlin) 编写的,并且工作方式与 Maven 完全不同..所以根本没有机会在 Gradle 中找到替代品。 .. gradle java 插件已经完成了surefire 在maven 中所做的工作 @smac89 我正在使用 gradle allure 插件做或多或少相同的事情:github.com/allure-framework/allure-gradle 【参考方案1】:查看the documentation 在 Gradle 中测试 Java 和 JVM 项目。 它应该回答有关在 Gradle 项目中设置测试的基本问题。
但是,如果您正在使用无法复制的 maven-surefire-plugin
的特定功能,请使用更具体的元素修改您的问题。
【讨论】:
感谢您的回复。我正在尝试添加 aspectjweaver JAR 和 JVM arg javaagent,同时准备测试编译以执行 allureServe 任务并在我的 Allure 报告中生成一些额外的测试信息。我可以使用这个插件来解决这个问题:github.com/allure-framework/allure-gradle以上是关于如何将 maven 插件转换为 gradle 插件(maven-surefire-puglin)?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jOOQ gradle 插件将 postgres 中的 bigint[] 字段转换为类字段
Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ⑧ ( 设置 Gradle 插件模块 | 将 Gradle 插件上传到自建 Maven 仓库 )