首页 \ 问答 \ 无法从命令行覆盖pom maven-surefire-plugin(Cannot overwrite pom maven-surefire-plugin from command line)

无法从命令行覆盖pom maven-surefire-plugin(Cannot overwrite pom maven-surefire-plugin from command line)

我有pom插件maven-surefire-plugin,其中skipTests为true。 但是,有时我想从命令行运行测试,我想从命令行覆盖此插件并保持pom文件不变。

我试过了

mvn install -DskipTests=false
但它仍然跳过测试......

知道如何解决我的问题......?
谢谢


I have in pom the plugin maven-surefire-plugin with skipTests on true. However, sometimes I want to run the tests from the command line and I want to overwrite this plugin from command line and to leave the pom file unchanged.

I tried

mvn install -DskipTests=false
but it still skips the tests...

Any idea how I can solve my problem...?
Thanks


原文:https://stackoverflow.com/questions/18734211
更新时间:2020-10-25 19:10

最满意答案

使用配置文件可以做到这一点。 它需要您更改pom文件,虽然它可以为您提供所需的行为。

在项目元素中设置属性

<properties>
  <runtests>false</runtests>
</properties>

现在创建一个配置文件

    <profile>
        <id>run-tests</id>
        <properties>
            <runtests>true</runtests>
        </properties>
    </profile>

在surefire插件配置中

<skipTests>${runtests}</skipTests>

现在运行mvn install -P run-tests此命令将激活配置文件,从而将runtests属性设置为true


Using profile can do the trick. It requires you change the pom file though it gives you the behaviour you want.

Set a property in project element

<properties>
  <runtests>false</runtests>
</properties>

Now create a profile

    <profile>
        <id>run-tests</id>
        <properties>
            <runtests>true</runtests>
        </properties>
    </profile>

in surefire plugin configuration

<skipTests>${runtests}</skipTests>

Now run mvn install -P run-tests This command will activate the profile, thus set the runtests property to true

2013-09-11

相关问答

更多

使用maven-surefire-plugin进行Maven插件管理的奇怪行为(Weird behavior with Maven plugin management with maven-surefire-plugin)

这是正常的,因为maven-surefire-plugin默认绑定到test阶段作为内置生命周期绑定的一部分 。 无需在子项目中声明它。 换句话说,该插件隐式可用于子项目,因为它将自己绑定到test阶段。 maven-scm-plugin (在另一个问题中链接)默认不绑定到任何阶段,因此您必须在子节点中声明它以从父节点继承配置。 但是因为maven-surefire-plugin默认绑定到测试阶段,所以你不需要在子节点中声明它。 尝试在你的子模块中运行mvn help:effective-pom ...

无法执行目标org.apache.maven.plugins:maven-surefire-plugin:2.10:test(Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test)

“http://repo.maven.apache.org/maven2):连接重置...” 你确定你从建立的主机访问互联网时没有问题吗?如果找到你缺少的依赖关系(mvn dependency :: tree),然后手动安装它们,并用-o构建你的项目(离线)选项。 You're probably missing some dependencies. Locate the dependencies you're missing with mvn dependency::tree, then inst ...

为什么需要为要运行的测试定义maven-surefire-plugin(Why maven-surefire-plugin needs to be defined for the tests to be run)

我正在使用的Maven版本(3.2.1)嵌入了maven-surefire-plugin的版本2.12.4。 我的项目是一个研究案例,没有测试课程。 即使没有遇到测试类,2.4.2版本的maven-surefire-plugin也必须默认获取Test报告。 2.12.4似乎没有这样做。 当我指定maven-surefire-plugin时,我将插件定义重写为版本2.4.2。 我很抱歉因为这种边缘情况引起了你的注意,而且缺乏细节。 The Maven version I am using (3.2. ...

maven-surefire-plugin忽略pom.xml中的插件顺序(maven-surefire-plugin ignores plugins order in pom.xml)

试试这个: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/m ...

maven-surefire-plugin,jacoco-maven-plugin显示没有报道(maven-surefire-plugin, jacoco-maven-plugin show no coverage)

问题似乎是maven-surefire-plugin在多模块项目中指定两次时表现不可预测 我的父pom在构建部分中有它,而子模块pom也在构建部分中有它。 因此,它似乎正在运行测试,但子模块中的覆盖率始终为0。 修复是从子模块pom中删除maven-surefire-plugin,并且只在父pom的build部分中有它。 问题得到了解决。 The issue seems to be that maven-surefire-plugin behaves unpredictably when spec ...

maven-surefire-plugin:pom:Nexus存储库中缺少2.9(maven-surefire-plugin:pom:2.9 missing from Nexus repository)

这将成为一个无休止的故事,将所有工件手动放入Nexus。 存储库代理的目的是检索它们并缓存它们。 如果它没有互联网接入,使其有点紧张而不是简化生活。 我会做什么:做一个mvn clean install dependency:go-offline在具有Internet访问权限的机器上进行mvn clean install dependency:go-offline ,然后将本地存储库复制到nexus版本或thridparty存储库,并让它通过web-gui重新索引。 这似乎是最简单的方法。 在ne ...

通过CLI设置maven-surefire-plugin的系统属性(Setting System Properties for the maven-surefire-plugin via CLI)

systemPropertiesFile不作为用户属性公开,因此如果您不想更改pom.xml,可以使用argLine : mvn install -DargLine="-DmyProperty=abc -DotherPoperty=def" systemPropertiesFile is not exposed as a user property, so if you don't want to change pom.xml you could use argLine: mvn install ...

maven-surefire-plugin dummy:dummy.jar:1.0缺失(maven-surefire-plugin dummy:dummy.jar:1.0 missing)

Maven在自定义存储库中找不到org.apache.maven.surefire:surefire-junit4:jar:2.18.1 。 然而,这种依赖是正确的,并在maven中心可用。 由于你已经配置中央到自定义存储库,maven不会在maven中央存储库中查找这个依赖项。 这很可能是由于您的自定义存储库服务器中的配置错误或该服务器没有可用的Internet连接。 您可以尝试排除自定义存储库服务器的故障,或者在maven settings.xml中将中央更改为默认maven中央存储库。 Ma ...

如何在Maven中使用JUnit 5和Java 10以及配置maven-surefire-plugin和org.ow2.asm(How to use JUnit 5 and Java 10 in Maven with the confilcting maven-surefire-plugin and org.ow2.asm)

经过长时间的讨论,我们终于成功了。 这是解决方案:整个讨论就在这里: https : //github.com/junit-team/junit5/issues/1409 <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <versio ...

无法从命令行覆盖pom maven-surefire-plugin(Cannot overwrite pom maven-surefire-plugin from command line)

使用配置文件可以做到这一点。 它需要您更改pom文件,虽然它可以为您提供所需的行为。 在项目元素中设置属性 <properties> <runtests>false</runtests> </properties> 现在创建一个配置文件 <profile> <id>run-tests</id> <properties> <runtests>true</runtests> </properties> </p ...

相关文章

更多

最新问答

更多
  • 如何保护Solr只允许SELECT请求给用户并禁止其他任何东西?(How to secure Solr to allow SELECT request to only users and disallow anything else?)
  • XPath表达式无效/错误TFHpple SWIFT 1.2(XPath Expression not working/incorrect TFHpple SWIFT 1.2)
  • css3 3D变换不能平滑地制作动画(css3 3D transform doesn't animate smoothly)
  • 运行时错误'91'和Outlook.Application = <对象变量或没有设置块变量>?(Run-time error '91' & Outlook.Application = Object variable or With block variable not set?)
  • 慢的webservice问题(Slow webservice problem)
  • textview的不正确对齐方式(Improper alignment of a textview)
  • 在第一步“Hello World”中出现Java错误(Cannot run “Hello World” program in Eclipse)
  • 为什么十六进制地址是14个字符?(why the hex address is 14 character?)
  • 如何在Python中的不同类中使用变量?(How to use variable in different classes in Python?)
  • asp:GridView HYPERLINKFIELD - datanavigateurlformatstring中的asp代码(asp:GridView HYPERLINKFIELD - asp code inside datanavigateurlformatstring)
  • 关于adaboost算法(About adaboost algorithm)
  • 在Matlab上内置图像(Built in Images on Matlab)
  • java swing:输入键事件时焦点丢失(java swing: Focus lost on enter key event)
  • C#中的通用约束,T是相同的TSomethingElse,对吧?(Generic constraints in C#, T is the same TSomethingElse, right?)
  • 从mybatis中的光标获取数据(Fetching data from cursor in mybatis)
  • 在运行时从XML构建对象的最佳方法(Best way for building objects out of XMLs at runtime)
  • 在整个窗口中拉伸sf :: Sprite(Stretch sf::Sprite across entire window)
  • Selenium Node API Web驱动程序等待超时处理程序(Selenium Node API web driver wait timeout handler)
  • 函数使用并且是map的一部分(循环依赖?)(Function uses and is part of map (circular dependency?))
  • 是否可以在C ++ 14中使用可选模板参数创建类型元组?(Is possible to make a tuple of types with optional template parameters in C++14?)
  • PHP从窗帘后面打印/ f(PHP prints /f from behind the curtains)
  • JFrame的contentPane的LayoutManager(LayoutManager of JFrame's contentPane)
  • 用于Instagram Feed的图像滚动(Image Roll Overs for Instagram Feed)
  • 如何显示拉伸字体(双倍宽度/高度)?(How to display stretched font (double width/height)?)
  • 文件操作API在fileapi.h和stdio.h中的WP8差异?(WP8 differences between file manipulation APIs in fileapi.h and stdio.h?)
  • 保存失败后Rails没有回滚事务()(Rails not rolling back transaction after failed save())
  • jqgrid中的分页问题与数组数据(Pagination problem in jqgrid with array data)
  • 重定向时,通过其他页面上的URL调用javascript函数(Call javascript function through url on otherpage while Redirecting)
  • 如何使用InvokeCommandAction调用我的方法并传入参数?(How do I go about using InvokeCommandAction to call a method of mine and pass in parameters?)
  • Jquerymobile按钮仅显示页面的第一个外观(Jquerymobile buttons are shown only first apperance of the page)