graalvm

JVM Language Summit 2019(JVMLS) day 2

JVMLSに来ています。2日目。 JVM Language Summit — July 29–31, 2019 初日はこちら JVM Language Summit 2019(JVMLS) day 1 - きしだのHatena 今日はほぼ1日を通してコンパイラの話でした。 ちなみに、普通はJavaの文脈でコンパイラというとJavaソースコー…

Java最新フレームワーク、Helidon、Micronaut、Quarkusをnative-imageまでまとめて試す

最近でてきたフレームワーク、Helidon、Micronaut、QuarkusをそれぞれクイックスタートからNative-Imageまでまとめて試します。

GraalVMはどれだけ遅いか

GraalVM流行ってますね。 そして、多くの人はGraalをAOTとして使うnative-imageのことだけをGraalVMと言ってたりします。 ご安心を。このエントリではGraalをJITとして使うHotSpotモードとGraalをAOTとして使うnative-imageの両方が遅いという話です。 Graal…

NetBeansからHelidonを使う

Helidonです、Helidon。 プロジェクトの作成 HelidonはMavenプロジェクト的には素直なので、Mavenはバンドルの3.3.9で大丈夫です。 プロジェクト作成もNetBeansからできます。 新規作成でjava with MavenからProject from Archetypeを選びます。 Archetypeの…

PostgreSQLへのJDBCアクセスをネイティブ化する

PostgreSQLへのJDBCアクセスがあるコードをGraalVMでネイティブイメージ化するとき、org.postgresql.core.v3.ConnectionFactoryImplの対応が必要だったのでメモ たとえばこんな感じでPostgreSQLにアクセスします。 public class Main { public static void m…

Scalaをネイティブコンパイルする

以前、Kotlinをネイティブコンパイルするという話を書いたので、今回はScalaをネイティブコンパイルしてみます。 Kotlinをネイティブコンパイルする - きしだのはてな 今回はGraalVMのnative-imageでのネイティブ化とScala Nativeでのネイティブ化を比較して…

フルスタックJVMマイクロサービスフレームワークMicronautをネイティブコンパイルする

MicronautはJVMで動くフルスタックのマイクロサービスフレームワークです。 GroovyでRailsっぽいことをするフレームワークGrailsを作ったチームが開発しています。 仕組み的な特徴としては、DIをコンパイル時に解決するというところですね。 Micronaut Frame…

Kotlinをネイティブコンパイルする

Kotlinをネイティブコンパイルしてみました。 Kotlinのインストール WindowsのWSLで実行したのでSDKMANを使いました。 https://sdkman.io/ $ curl -s https://get.sdkmain.io | bash で、ターミナルを起動しなおして $ sdk install kotlin Macならbrewで。 $…

Spark FrameworkをGraalVMでネイティブコンパイルする

Spark FrameworkをGraalVMでネイティブコンパイルしてみます。 maven-assembly-pluginでfat jarをつくる native-imageに--report-unsupported-elements-at-runtimeをつけてだまらせる という感じで。 SparkFrameworkのdependencyを登録します。 <dependency> <groupId>com.sparkja</groupid></dependency>…

GraalVMでRust動かしたりレイトレをネイティブコンパイルしたり

GraalVMが正式にリリースされました。結構話題になってますね。 GraalVMは、JavaベースJITとAoT、そしてASTエンジンTruffleの複合体です。(かな?) GraalVM ということで、Rust動かしたりJavaで書いたレイトレコードをネイティブコンパイルしたりしてみまし…