Groovy 与 Groovyc
Groovy vs Groovyc
我是Groovy的新手,不明白groovy
和groovyc
的区别。所以如果我有这个文件,
hello.groovy
println "Hello World"
如果我 运行 groovy hello.groovy
它打印 "Hello World"
如果我 运行 groovyc hello.groovy
它会生成一个 .class
文件,如果我然后 运行 groovy hello
它会打印 "Hello World"
现在来自 ruby
,这让我很困惑。 groovy 是编译的解释型语言吗?
Groovy是一种编译语言,但它允许你执行脚本。像您一样调用 groovy
编译并运行脚本。调用 groovyc
只会编译您的代码。
Groovy 是一种源自 Java 的语言。 groovyc
是 Groovy 编译器,它能够生成可以像任何普通 Java 编译程序一样执行的 JVM 字节码。
在这两种情况下,代码都是用 groovy 和 groovyc 编译的,但在第一种情况下,它是动态编译成字节码并执行的,而使用独立编译器时,只生成字节码(并保存以备后用)
我是Groovy的新手,不明白groovy
和groovyc
的区别。所以如果我有这个文件,
hello.groovy
println "Hello World"
如果我 运行 groovy hello.groovy
它打印 "Hello World"
如果我 运行 groovyc hello.groovy
它会生成一个 .class
文件,如果我然后 运行 groovy hello
它会打印 "Hello World"
现在来自 ruby
,这让我很困惑。 groovy 是编译的解释型语言吗?
Groovy是一种编译语言,但它允许你执行脚本。像您一样调用 groovy
编译并运行脚本。调用 groovyc
只会编译您的代码。
Groovy 是一种源自 Java 的语言。 groovyc
是 Groovy 编译器,它能够生成可以像任何普通 Java 编译程序一样执行的 JVM 字节码。
在这两种情况下,代码都是用 groovy 和 groovyc 编译的,但在第一种情况下,它是动态编译成字节码并执行的,而使用独立编译器时,只生成字节码(并保存以备后用)