如何使用Regexp将Maven和Gradle与Travis Logs区分开



上下文:我目前正在使用一种研究工具,该工具需要在Travis API上开采,以获取Github上数千个项目的构建信息。我想找到最好的方法来识别项目是否使用Maven或Gradle作为建筑工具。

我从travis构建并解析它们的日志,因为现在我使用以下模式:

^(-------------------------------------------------------|[INFO] Reactor Summary:)$

这是Gradle的:

^(:[w-]+)?:test[w-]*$

问题我是否发现了每天不适合那些言论的新项目:那么您是否有任何想法可以改善它们以发现最多没有假阳性的项目?

编辑:我对启动测试的项目非常感兴趣,这就是为什么我从这些regexp开始的原因。

这可能对您有用...一个从Maven转换为Gradle

的项目
  • 塔德建筑物的塔德大楼
  • 带有gradle的临时大楼

也许您可以有一条以下是

  • 如果" mvn"出现在" gradle"或" gradlew"之前的日志中
  • 如果" gradle"或" gradlew"出现在" mvn"之前,那是一个gradle项目

最新更新