Eclipse Transformer による javax → jakarta ネームスペースへの変換手順

Eclipse Transformer とは Eclipse Transformer の準備 Eclipse Transformer による変換 Eclipse Transformer とは javax → jakarta へのネームスペース変更を行うツールで、以下のファイルの変換を行うことができる。 Java class files OSGi feature manife…

GlassFish と Payara のバージョン一覧

Payara のバージョンが据え置きの期間があるのでわかりにくいので、一覧にしておきました。 EE Spec リリース日 GlassFish Payara 備考 Jakarta EE 11 2024年??月 GlassFish 8.0 Payara 7 (MicroProfile 6) Java 17 Jakarta EE 10 2022年09月 GlassFish 7.0 …

PowerShell のエンコーディング指定💩

はじめに Console.OutputEncoding プロパティ $OutputEncoding $PSDefaultParameterValues はじめに PowerShell のエンコーディングは色々あって分かりにくくて。 しかもバージョンによってデフォルト値が異なっていたり混乱の極み。 エンコード変数 説明 [S…

PostgreSQL Windows の psql で pager off すると出力が文字化けする

psql バージョン psql.exe --version psql (PostgreSQL) 17.1 以下のように接続し、 chcp 65001 $Env:PGCLIENTENCODING = "utf-8" $Env:PGHOST = "localhost" $Env:PGDATABASE = "postgres" $Env:PGPORT = "5432" $Env:PGUSER = "postgres" $Env:PSQLRC = ".…

PostgreSQL psql でスプール出力

結論 その他の方法 結論 -L オプションを使えば良い(PostgreSQL 8.1 から追加)。 psql ... -L psql.log -L filename --log-file=filename すべての問い合わせの出力を通常の出力先に出力し、さらにファイル filename に書き出します。 以下のようなログが出…

PowerShell リダイレクト演算子のネイティブコマンドへの適用方法

PowerShell リダイレクト演算子 リダイレクト操作 標準エラー出力とPowerShell Error Stream PowerShell リダイレクト演算子 PowerShellリダイレクト演算子には以下がある。 演算子 説明 シンタックス > 指定したストリームをファイルに送信 n> >> 指定した…

Java ZGC の変遷と設定オプション

ZGC の変遷 ZGC オプション ZGC の変遷 JDK JEP 備考 JDK 11 JEP 333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental) Linux/x64 向け JDK 13 JEP 351: ZGC: Uncommit Unused Memory (Experimental) 未使用ヒープをOSに返却 JDK 14 JEP 364:…

Aurora PostgreSQL pg_hint_plan エクステンション

pg_hint_plan の有効化 ヒント句の指定 ヒントテーブル pg_hint_plan は SQL 文にヒント句を指定するエクステンション。 SQL 文に /*+ HashJoin(a b) */ のようなヒントを指定する方法と、hint_plan.hints テーブルに予めヒント定義する方法の2つがあり、実…

Aurora PostgreSQL の shared_buffers パラメータ

shared_buffers Aurora PostgreSQL の shared_buffers DBInstanceClassMemory shared_buffers shared_buffers は 共有メモリバッファ のメモリ量を設定するPostgreSQL のパラメータ。 PostgreSQL 15 からのデフォルト値は 16,384(それ以前は1,024)。 BLCKSZ …

Java 24 で導入 JEP 493 Linking Run-Time Images without JMODs

JEP 493 Linking Run-Time Images without JMODs まとめ Summary Goals Motivation Description Not enabled by default Restrictions Alternatives blog1.mammb.com JEP 493 Linking Run-Time Images without JMODs まとめ JDKベンダがJDKをビルドする際に…

PostgreSQL random_page_cost パラメータについて

random_page_cost パラメータ random_page_cost の意味合い random_page_cost の設定値 random_page_cost パラメータ random_page_cost はディスクからのランダムページアクセスのコストを制御するパラメータでクエリプランナのにコスト計算に影響する。 現…

💩Windows Server 2016(メモリ4G) の Windows Update は一生終わらない

一生終わらない Windows Update このところ Windows Server 2016 の Windows Update がほとんど機能しない。 「更新プログラムを確認しています...」が一生終わらなかったり、メモリ不足エラーで突然死したり。 スタンドアロンインストーラで凌いでいたけど…

Eclipse GlassFish 7.0.18 は glassfish-embedded から直接アプリケーションを起動できます

はじめに glassfish-embedded の設定 glassfish.properties ファイル glassfish-embedded のオプション詳細 コマンド例 はじめに 2024年10月2日リリースの Eclipse GlassFish 7.0.18 では、glassfish-embedded が実行可能JARになり、直接Webアプリケーション…

Playwright for Java でインストール済みのブラウザを利用する

PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD オプション BrowserType.LaunchOptions() まとめ PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD オプション Playwright で利用するブラウザは、自動的にダウンロードされる。 ブラウザのダウンロードを抑止する場合は、PLAYWRIGHT_SKI…

Java 24 で正式公開される クラスファイルAPI(JEP 484: Class-File API)

はじめに クラスファイルの読み込み クラスファイルの書き込み クラスファイルの変換 まとめ openjdk.org はじめに Class-File API は以下のプレビューを経て JDK24 で正式公開される予定です。 JDK22 JEP 457: Class-File API (Preview) JDK23 JEP 466: Cla…

Windows Server で圧縮した4G超のファイルが Linux で unzip できない

以下のエラーとなる $ unzip XXX.zip Archive: XXX.zip warning [XXX.zip]: 1234567890 extra bytes at beginning or within zipfile (attempting to process anyway) error [XXX.zip]: start of central directory not found; zipfile corrupt. (please che…

Amazon Linux 2023 上で Ora2Pg 環境を構築する手順

はじめに oracle-instantclient のインストール perl CPAN と必要モジュールのインストール Ora2Pg インストール Ora2Pg の設定 Ora2Pg によるエクスポート はじめに 環境構築がひどく面倒な Ora2Pg を Amazon Linux 2023 で利用するための手順です。 Window…

古いWindowsで DBeaver のドライバダウンロードが失敗する場合の対処法

古いWindows 環境で DBeaver を使った場合に、ドライバのダウンロードが失敗する場合がある。 以下のような IOException が発生するケース Network unavailable java.io.IOException:Exception during a connection to https://repo1.maven.org Error resolv…

jpackage で Windows アプリケーションのインストーラを作成する

はじめに Windows で jpackage によるアプリケーションのインストーラ作成の手順をまとめておきます。 jpackage については以下を参照してください。 blog1.mammb.com Gradle プロジェクト org.beryx.jlink プラグインを使うのが簡単。 build.gradle.kts は…

PostgreSQL クライアントをWindows でインストールなしで使う

psql コマンドだけちょこっと使いたい。 ただそれだけなのだが、クライアントのみのバイナリは配布されていない。 そんな時は、zip archive 版から不要ファイルを削除すれば良い。 PostgreSQL ダウンロードサイトから zip archive のリンクを辿れば postgres…

Windows で jpackage コンソールアプリケーションを作る時は --win-console オプションが必要

少しはまったのでメモ。 Gradle org.beryx.jlink プラグインで、ランタイムがバンドルされたアプリケーションを作成する場合、以下のような build.gradle.kts を作成する。 plugins { application id("org.beryx.jlink") version "3.0.1" } repositories { m…

なぜか Windows 環境で Ora2Pg を使わなければならなくなった場合の環境構築方法

はじめに ショート・バージョン Perl 環境の作成 Oracle instantclient Ora2Pg DBD::Oracle 起動用のバッチファイル作成 Ora2Pg の実行 はじめに Ora2Pg は Oracle から PostgreSQL へのデータベース移行を行うオープンなツールです。 Ora2Pg を使うには Per…

【Rust】 Default トレイト

blog1.mammb.com Default トレイト std::default::Default トレイトの実装により、型に応じた自明なデフォルト値を提供できる。 std::default::Default トレイトは以下のような定義となっている。 pub trait Default: Sized { fn default() -> Self; } 例え…

【Rust】Drop トレイト

blog1.mammb.com Drop トレイト 値がスコープから外れたなどで、値が不要になった場合、Rustはその値に対してデストラクタを実行する。 デストラクタにより、メモリ/ファイルディスクリプタ/ネットワークソケットなどのリソースが解放される(その値の持つ全…

【Rust】Copy マーカートレイト

blog1.mammb.com Rust では、型に対する代入操作は移動となり、資源の所有権が移動する。 Copy 型は、代入操作時にコピーが行われる型を表すマーカートレイト std::marker::Copy を実装する。 pub trait Copy: Clone { // Empty. } Copy トレイトは Clone ト…

【Rust】Clone トレイト

std::clone::Cloneトレイト clone() メソッド clone_from() メソッド blog1.mammb.com std::clone::Cloneトレイト std::clone::Clone トレイトを実装した値は、自身のクローンをメモリ上に新たに作ることができる。 以下のような定義となっている。 pub trai…

Maven Central Repository 公開時の認証をユーザートークンに変更する手順

はじめに ユーザートークンの発行 ユーザートークンの設定 publish 実行 はじめに 2024年6月に Sonatype における認証システムが変更され、ユーザートークンでの認証が必要になったようです。 従来のユーザ名とパスワードで Publish しようとした場合、以下…

Rust のユーティリティトレイトまとめ

名前 説明 Sized コンパイル時にサイズが定まる型に対するマーカトレイト(詳細) Copy 値の置かれたメモリをバイト単位でコピーすることでクローン可能であることを示す マーカトレイト(詳細) Drop 値がドロップされる直前に自動的に実行されるコードを定義(…

【Rust】遅延初期化を行う LazyCell と LazyLock

LazyCell LazyLock LazyCell と LazyLock は遅延初期化を提供する構造体で、Rust 1.80.0 で安定版となった。 LazyLock はスレッドセーフであり、static 変数を遅延初期化できる。 LazyCell LazyCell は初回アクセス時に指定された関数 F で値を初期化し、そ…

DDD モデルの型定義 - jmolecules -

はじめに 集約ルートの指定と型制約 リポジトリに対する制約 外部の集約ルート参照に対する制約 はじめに この記事は、以下の記事の補足説明です。 blog1.mammb.com 集約ルートの指定と型制約 エンティティが、別の集約ルートに属するエンティティとコンポジ…