我们可以结合使用“javac”和“java”命令

时间:2013-10-12 05:43:05

标签: java command-line groovy

Groovy命令行命令" groovy"似乎将Groovy源文件(.groovy)编译为.class文件,然后运行它(如果它是脚本)。

有没有充分的理由说明为什么没有编译和运行.java文件的等效命令?*

为什么我们需要做两个步骤?

javac XXX.java
java XXX

为什么不只是

java XXX

*也许我严重错误并且有这样的事情

2 个答案:

答案 0 :(得分:1)

你能做到吗?是。编写运行javac后跟java

的脚本非常简单

这是个好主意吗?嗯,由你来决定。但我认为您会发现运行javac后跟java需要显着比运行java更长。因此,除非您通常只运行一次Java程序,否则将两个步骤分开是有意义的。

所以......

  

是否有充分的理由说明为什么没有编译和运行.java文件的等效命令?

是。因为性能原因,您通常希望编译(构建)并作为单独的步骤运行。

答案 1 :(得分:-1)

Groovy是一种动态语言。所以没有编译步骤。它的写 - >执行。当您使用Groovy开发应用程序时,您发布的是您已编写的实际来源。 Java是一种静态语言。当您使用Java开发内容时,您可以执行write-> compile->执行。开发完应用程序后,您发布的是已编译的代码。这就是为什么有一个单独的命令' javac',来编译代码并生成您将要发送给客户的工件。当然,在开发它时,直接运行java代码要容易得多。大多数IDE都提供此功能。例如:在eclipse中你可以运行一个拥有main方法的Java类。

=================================

编辑:对于任何被投票的人: - )

我概述了Groovy和Java的不同意图。 Groovy是一种动态/脚本语言。因此,像许多其他类似的语言一样没有编译'步。 Java意味着是一种静态语言。因此,编译'步骤存在于执行静态类型检查的位置。