【问题标题】:Why there is no "public static void main" required to start an RFT script?为什么启动 RFT 脚本不需要“public static void main”?
【发布时间】:2017-06-09 14:48:54
【问题描述】:

我想知道 RFT 是如何工作的,即使它在脚本中不包含任何 public static void main(String[] args)。该脚本包含一个运行该脚本的方法public void testMain(Object[] args)。即使没有public static void main,有人可以解释RFT是如何发生的吗?

【问题讨论】:

    标签: java rft


    【解决方案1】:

    Java 程序没有固定的入口点。事实上,你可以调用任何你想要的方法,只要它是可访问的。调用什么方法取决于进行调用的应用程序。

    发生的情况是java 命令行工具,如docs 中所述:

    java 命令启动 Java 应用程序。它通过启动来做到这一点 Java 运行时环境 (JRE),加载指定的类,以及 调用该类的 main() 方法。该方法必须声明为public 和静态的,它不能返回任何值,它必须接受一个字符串 数组作为参数。

    这只是java 工具的行为。其他工具的行为可能会有所不同。

    【解决方案2】:

    没有main() 方法,因为您没有将RFT 脚本作为Java 应用程序运行。您实际上启动了 RFT 的某些部分,然后调用 testMain() 方法。您开始的 RFT 部分包含一个main() 方法。您可以将其与 JUnit 测试用例进行比较:您运行 JUnit 框架并调用所有带注释的测试方法。在 RFT 中,您运行 RFT 部分并调用您的 testMain() 方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-30
      • 1970-01-01
      • 1970-01-01
      • 2016-05-22
      • 1970-01-01
      • 2019-05-28
      • 2019-11-23
      相关资源
      最近更新 更多