OpenJDK
JDK Mission Control のインストールディレクトリにある jmc.ini に言語設定を追加します。 英語にするには -vmargs の下のどこかに -Duser.language=en を追加します。 (略) -vmargs (略) -Djava.net.preferIPv4Stack=true -Djdk.attach.allowAttachSel…
個人的に気になっている Project Loom で Virtual Threads がプレビューされたので仕様である JEP を翻訳してみました。 ボリュームが多いため、いくつかのパートに分けて公開していきます。 原文はこちら:JEP 425: Virtual Threads (Preview) 全パートはこ…
個人的に気になっている Project Loom で Virtual Threads がプレビューされたので仕様である JEP を翻訳してみました。 ボリュームが多いため、いくつかのパートに分けて公開していきます。 原文はこちら:JEP 425: Virtual Threads (Preview) 全パートはこ…
個人的に気になっている Project Loom で Virtual Threads がプレビューされたので仕様である JEP を翻訳してみました。 ボリュームが多いため、いくつかのパートに分けて公開していきます。 原文はこちら:JEP 425: Virtual Threads (Preview) 全パートはこ…
個人的に気になっている Project Loom で Virtual Threads がプレビューされたので仕様である JEP を翻訳してみました。 ボリュームが多いため、いくつかのパートに分けて公開していきます。スターやブコメが付くとモチベーションが上がるかもしれません。(…
個人的に気になっている Project Loom で Virtual Threads がプレビューされたので仕様である JEP を翻訳してみました。 ボリュームが多いため、いくつかのパートに分けて公開していきます。スターやブコメが付くとモチベーションが上がるかもしれません。(…
私は、OpenJDKのCommitter業や仕事でミドルウェアのSolution Architectとして活動している関係上、最近はコンテナ上でJavaアプリケーションを動かすことが非常に多いです。 KubernetesでJavaアプリを監視する場合には、Elasticsearch+KibanaやPrometheus+Gra…
これは何? 今回、パッチを書いたのはJDK-8249720のGenerated bytecodes of EventWriter don't be output to the logです。 [JDK-8249720] Generated bytecodes of EventWriter don't be output to the log - Java Bug System VM起動引数に-Xlog:jfr+system+…
Java 14 から JDK Flight Recorder で取得した情報を Java プロセス内で処理する JFR Event Streaming が導入されました。今回はこれを Quarkus で使ってみたいと思います。 今回のサンプルでは JFR では標準的な情報を取得するようにします。JFR Event Stre…
環境 以下の環境で試しました。 macOS Mojave バージョン 10.14.6 Xcode Version 11.3.1 (11C504) 環境の準備 環境を準備するには以下の3つが必要です。 Xcode autoconf Boot用JDK Xcode は App Store からインストールしました。 デフォルトの設定ではbash …
これは何? 今回、パッチを書いたのはJDK-8219904のClassCastException when calling FlightRecorderMXBean#getRecordings()です。 [JDK-8219904] ClassCastException when calling FlightRecorderMXBean#getRecordings() - Java Bug System これはJMXのリモ…
これは何? 今回、パッチを書いたのはJDK-8222489のjcmd VM.system_properties gives unusable paths on Windows。 [JDK-8222489] jcmd VM.system_properties gives unusable paths on Windows - Java Bug System Java 14までにはjcmd <PID> VM.system_properties</pid>…
もともとこんな感じで同期で作っていたので「es.start()の部分をes.startAsync()にしたら非同期になるだろ」と思いやったらイベントが全然処理されない。 import jdk.jfr.Configuration; import jdk.jfr.consumer.EventStream; import jdk.jfr.consumer.Reco…
OpenJDK の開発環境を E3-1265 V2 から i9-9900K へ変えてみたのでビルド時間を計ってみました。 ※i5-9400H のCPUもゲットしたので表でだけ性能を追加しました。 それぞれの性能はこんな感じです。 プロセッサ名 物理コア数 ベース動作周波数 ターボブースト…
Windows 上で Windows Subsystem for Linux (WSL) を使用して OpenJDK 14 の Windows バイナリをビルドする方法をまとめます。 やりがちですが、Windows Subsystem for Linux (WSL)側のUbuntu 側で hg するのは必須ではありません。(やった) Windows側で好…
自分が使うコマンドをうっかり忘れるときがあるのでその備忘録のために、開発の流れとそこで使ってる内容をメモ。 公式のガイドはこちらを参考にしてください。The OpenJDK Developers' Guide – Index OpenJDK の開発は以下のような流れで行います。 バグを…
OpenJDK のビルドやテストは時間が非常に掛かるので、クラウド上で大量の CPU リソースを使って短時間化できないかを試してみました。 今回作った環境に自分で書いたパッチを置いて Terraform を実行すると、あとはクラウド上で大量のリソースを使ってビルド…
Java のコードをデバッグ実行するには-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=127.0.0.1:12345みたいな感じのを付けます。これを使って OpenJDK の Java 部分のデバッグができるだろうなと思って試してみました。 jtreg で実行する…
Java Bug System を見ていたら JShell 自体のデバッグを見つけたので、パッチを書こうと思いJShellについて調べてみた。 使い方や 2 つの JVM が動くぐらいは知っていたけど、具体的には知らないので調べてみました。 試しにjshellコマンドを実行してからjmc…
JVM Language Summit に先立ち、Fri, 27 Jul 2018 15:33:05 +0100 に Project Loom がついにコミットされたので試してみたいと思います。 現段階ではまだまだ開発途中であるためクラスやメソッドが変更される可能性があるのでご注意ください。
2017年7月26日(PDT)付けで OpenJDK 10 の Author になりました。 OpenJDK Census ※7月27日(JST)現在では未反映 2017/7/27 09:57 -0700反映されました。 Authorになるまでの道のり Author になるにはパッチをいくつか書いて、Project Lead へメールをするだけ…
OpenJDK を開発したりソースを見ていると、関数やクラスの定義を追いたくなったり、実行しながら動作を確認したくなることがあります。 多くのエンジニア達は vi や grep 、gdb を使ってるそうです。私にとってCUIでの開発はハードルが高くてかなりつらいの…
OpenJDK の JDK 9 をビルドします。 ビルドするには以下の手順を行います。 必要なパッケージのインストール ソースコードをダウンロード コンフィグレーション ビルド 今回は Oracle Linux 7.3 上に環境を作っています。RHEL や CentOS でも手順は変わらな…