jqassistant - 定期扫描存储库并将其内容作为服务器提供

jqassistant - scan repository regularly and offer its content as server

我知道我可以使用类似

的东西
jqassistant.cmd scan -u maven:repository::http://ik-repo1:8084/nexus/content/repositories/releases

增量扫描 Maven 存储库,

jqassistant.cmd server -serverAddress 123.321.0.0 -serverPort 8088

允许我通过服务器访问附加的 neo4j 数据库。

现在我想定期扫描存储库(比如:每天一次)和 运行 全天扫描服务器(以便每个人都可以查找和查询软件结构)。

我找不到 运行 服务器作为 (Windows) 服务的选项。此外,似乎不可能同时 运行 "scan" 和 "server" 。

到目前为止,我最好的想法是在 java 中编写一个小服务,其中 运行 是以下循环:

  1. 启动服务器并等到午夜。
  2. 停止服务器。
  3. 执行增量扫描。

有更好的主意吗?

当前的 jQAssistant 运行时模型是围绕在构建过程中将其作为任务或插件调用而设计的,而不是针对所描述的“24/7 服务器”用例。所以你描述的方法是目前唯一的解决方案。

尽管如此,还是有用户要求支持这种情况,我们脑子里有一些想法,例如jQAssistant 作为 Neo4j 服务器扩展,提供 REST 接口来触发扫描和分析任务 - 非常感谢对此进行讨论,包括潜在用例!

此致,

德克

我们使用一个类似的系统,该系统已经 运行 已经使用了大约 2 年了。 我们使用 Jenkins 每晚更新,调用 perl 脚本使用 maven 从 nexus 下载某些 jar 文件。这是在虚拟机上完成的。然后我用jqassistant扫描。我不使用来自 jqassistant 的内部 NEO4j,而是使用配置了 neo4j 的下一个外部 neo4j 版本 2.3.10。

我使用外部 neo4j,所以我可以在更新等时启动和停止。 这是我们的做法。

每次运行删除所有数据,然后每次都创建新的数据库。我应该指出这一点。