私は、何になるのかのためのAPIを作成する必要があります主にJavaアプリケーションスイートです。私はこれをすばやく行う必要があり、現時点では私はグルーヴィーで最も快適に書くことができます。私の質問は、このapiをGroovyで作成し、特別なフープなしでJavaアプリケーションで使用できますか?
つまり、私はGroovyのクラスとメソッドからjarファイルを作成して、javaアプリケーションをjavaで作成したようにこのjarファイルを使用させることができますか?
回答:
回答№1の場合は3はい、できます。 jarファイルを生成するために、gradle、ant、それを使ってコンパイルするだけです。結果として得られるjarは、Groovyランタイムjarとモジュールがあればそれに依存します。 Groovyはバイトコードをコンパイルするので、Javaは本当に異種を認識しません。動的なものだけがうまく動作しません。
MyLib.groovy:
class MyLib {
def string
MyLib(string) {
this.string = string
}
String yell() {
string.toUpperCase() + "!!!"
}
}
コンパイル済み:
$ groovyc MyLib.groovy
Groovyを使用するJavaクラス、TestMyLib.javaを記述する:
public class TestMyLib {
public static void main(String[] args ) {
MyLib my = new MyLib("john doe");
System.out.println(my.yell()); // prints JOHN DOE!!!
}
}
コンパイル:
$ javac TestMyLib.java
そして実行:
$ java -cp $GROOVY_HOME/embeddable/groovy-all-2.1.8.jar:. TestMyLib
JOHN DOE!!!