上下文:我目前正在使用一种研究工具,该工具需要在Travis API上开采,以获取Github上数千个项目的构建信息。我想找到最好的方法来识别项目是否使用Maven或Gradle作为建筑工具。
我从travis构建并解析它们的日志,因为现在我使用以下模式:
^(-------------------------------------------------------|[INFO] Reactor Summary:)$
这是Gradle的:
^(:[w-]+)?:test[w-]*$
问题我是否发现了每天不适合那些言论的新项目:那么您是否有任何想法可以改善它们以发现最多没有假阳性的项目?
编辑:我对启动测试的项目非常感兴趣,这就是为什么我从这些regexp开始的原因。
这可能对您有用...一个从Maven转换为Gradle
的项目- 塔德建筑物的塔德大楼
- 带有gradle的临时大楼
也许您可以有一条以下是
- 如果" mvn"出现在" gradle"或" gradlew"之前的日志中
- 如果" gradle"或" gradlew"出现在" mvn"之前,那是一个gradle项目