【问题标题】:Java application interacting with the command line与命令行交互的 Java 应用程序
【发布时间】:2010-11-28 14:19:20
【问题描述】:

我正在考虑编写一个 java 应用程序来包装 CVS 和我们的一些其他自定义构建/部署脚本。这样就可以轻松查看状态、进行构建、发布和部署,而无需输入命令。最简单的方法是什么?

我想我必须将命令的输出重定向到一个字符串并解析它以获得我想要的信息。

还有其他技术/建议吗?

【问题讨论】:

    标签: java command-line


    【解决方案1】:

    对于解析命令行参数,我推荐args4j

    更新:根据您的问题描述,听起来以下任何或所有选项都比自己滚动更好:HudsonCapistranoFabric,或者只是普通的 shell 脚本。

    更新 2:根据反对意见和评论,您似乎对从另一端与命令行交互感兴趣,即驱动命令行,而不是被命令行驱动。在这种情况下,痛苦的经验表明 Java 显然不是最佳选择。几乎任何“脚本”语言都更合适。如果你还想做,总有ProcessBuilder和朋友们。

    【讨论】:

    • 这和我的问题有什么关系。我问的是与命令行交互,而不是命令行争论。
    • 对不起;误解了你的问题。在我的辩护中,从命令行读取输入在很大程度上被视为“与命令行交互”。
    【解决方案2】:

    几天前我回答了一个类似的问题:

    Implementing the "system" command in Java

    包装命令行调用有点棘手。

    【讨论】:

      猜你喜欢
      • 2018-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-18
      • 2010-10-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-05
      相关资源
      最近更新 更多