torutkのブログ

ソフトウェア・エンジニアのブログ

さくらVPSのOSをCentOS 8に更新、さらにRedmineを4.1に更新(続々々)

さくらVPSのOSをCentOS 8に、Redmineを4.1に更新、の続き(4日目) 先日の続きです。 torutk.hatenablog.jp Redmineログのローテーション SELinux下でlogrotateを使ってRedmineのログ・ローテーションを実現するには設定がそれなりに手間なので、Railsの機能…

さくらVPSのOSをCentOS 8に更新、さらにRedmineを4.1に更新(続々)

さくらVPSのOSをCentOS 8に、Redmineを4.1に更新、の続きの続き 昨日の作業の続きです。 torutk.hatenablog.jp Let's Encrypt の証明書更新 証明書更新の処理確認(エラー対処) 証明書を更新するスクリプトの実行確認(dry-run)をします。 # certbot-auto …

さくらVPSのOSをCentOS 8に更新、さらにRedmineを4.1に更新(続)

さくらVPSのOSをCentOS 8に、Redmineを4.1に更新、の続き 昨日の作業の続きです。 torutk.hatenablog.jp Unicornのセットアップ Unicorn gemのインストール Unicornはrubyモジュール(gem)として提供されるので、bundlerでインストールします。 Redmineをイ…

さくらVPSのOSをCentOS 8に更新、さらにRedmineを4.1に更新

さくらVPSのOSをCentOS 8に、Redmineを4.1に更新 まとまった休みが取れたので、さくらVPSのサーバーのOSをCentOS 7から8に上げて、合わせてRedmineを3.4から4.1に上げる作業を実施しています。更新作業中はRedmineにコンテンツを挙げられないので、はてなに…

mavenリポジトリからjarファイルの取得

はじめに インターネットと常時接続が維持できない環境でプログラミングをする場合、ローカルにライブラリファイル等を保持し、ビルドスクリプトからはローカルのライブラリを参照すれば作業が可能になります。 NetBeans等のIDEでライブラリを利用して開発す…

Java SE 8の安定感

はじめに これからソフトウェア開発を始めるプロジェクトでプログラミング言語にJavaを使う場合に、Javaのバージョンをどうしようかと調べたことを書き付けます。 開発するソフトウェアは、5年から10年、場合によってはそれ以上使われることが想定されます*1…

Java Module Systemのmain classを持つJARファイル作成の落とし穴

発生した事象 IntelliJ IDEA で作成していたJavaFXアプリケーションがあります。ビルド成果物でJARを作成し、Main Classを指定すると、実行可能JARファイルが生成されます。 このアプリケーションのプロジェクトにmodule-info.javaを追加してJava Module Sys…

NetBeans 8.2のFindBugs Integrationプラグインインストールがエラーに

発生した事象 4,5年前に立ち上げ時期だけ参加していたプロジェクトがありました。そのプロジェクトはもうクローズしていますが、その資産を引き継ぎ新たに開始したプロジェクトがあり、Javaに詳しい開発者がいないとうことで、そのプロジェクトを(本業に差…

ソフトウェア開発環境が含む範囲

ソフトウェア開発環境が含む範囲 本記事は、製品としてソフトウェアを作る場合で、複数の開発者が共同して作業する、企業でのビジネスを想定しています。プログラミング言語は、コンパイラ型でオブジェクト指向プログラミング機能を想定しています。 逆に、…

JDK 9のjavac "--release"オプションについて

はじめに 2月1日開催の Java読書会「The Java Module Sysmem」を読む会(第4回)において、コラム枠にJDK 9で導入されたjavacコマンドのオプション--releaseの記載がありました。 --releaseオプションは、開発(コンパイル)に使用するJDKのバージョンよりも…

「The Java Module System」を読む会これまでのまとめ(その2) #javareading

Java読書会「The Java Module System」を読む会(第1~3回)のまとめ(その2) torutk.hatenablog.jp の続きです。 第2章 Anatomy of a modular application モジュール化したアプリケーションのディレクトリ構成の例 +- libs (サードパーティの依存物) …

「The Java Module System」を読む会これまでのまとめ(その1)

Java読書会「The Java Module System」を読む会(第1~3回)のまとめ(その1) #javareading Java読書会BOFでは、2019年11月から「The Java Module Systems」(洋書)を読み進めています。 The Java Module System作者:Nicolai Parlog出版社/メーカー: Mannin…

Githubのブランチ管理方針~Redmineプラグインの場合

Gitのブランチ管理方針~Redmineプラグインの場合 Redmineプラグインのコード管理の背景 RedmineのGlossary Pluginをフォークして細々とRedmineバージョンアップに対応しています。 https://github.com/torutk/redmine_glossary Redmineプラグインのコードを…

Redmineのテキスト編集をIE上で行う際Escキーで編集内容が消える問題の対処

はじめに 自宅PCや開発PCでは、Webブラウザとして主にFirefoxを使い、たまにChromeを、稀にEdgeを使います。 先月初めに、職場が移って(現職出向から帰任)新しいPCが配布されました。業務システムの対応Webブラウザの関係か、デフォルトがIE 11となってい…

WSLでCentOSが利用できたかも?(CentOS 7)

WSLで動くLinuxディストリビューション 現在、WSLの上で動くLinuxディストリビューション(WSLではLinuxカーネルは動かさないので実際にはユーザーランド)は、マイクロソフトストア上にUbuntu、OpenSUSE 他いくつか用意されていますが、CentOSはありません…

Windowsマシン上でのLinux環境は混沌と PC上に直接Linux OSをインストールして起動する(デュアルブート)環境は対象外とします。 Windows OSの動作を前提に設計されたノートPCでは、Linux OS向けドライバが存在しないデバイスが搭載されていることが多く、W…

RubyMineでRedmineプラグイン開発をする(Windows環境)

はじめに これまでは、Windowsマシン上でRedmineプラグイン開発環境を用意するのに、仮想マシン(Hyper-Vなど)にLinuxを入れてその上でLinuxベースの開発環境を整える方法を取っていました。ただしCUI環境が主です。Hyper-VでGUI環境を動かすとかなり動作が…

今月のJava読書会は「The Java Module System(洋書)」を読みます

Java読書会の新しい本 毎月1回川崎市でJavaに関する技術書籍の読書会を開催しているJava読書会BOFでは、 先月で「Java 11 and 12 - New Features」が読了し、新しい課題図書のWeb投票を実施ました。 その結果得票数4票(!)で第1位となったのがThe Java Mod…

ResultSetがStreamになったら嬉しいかも

はじめに JDBCでデータベース検索のプログラムを書いていると、テーブル毎に似たような、そしてちょっとずつ異なるコードを書くことになります。 異なる部分は、カラム名、データ型、そして取り出したバラバラの値をJavaのデータクラス(ドメインクラスであ…

グラフ表示アプリケーション作成時のトピック

はじめに 次の記事の続きです。 torutk.hatenablog.jp データベース利用グラフ表示アプリケーションを作成している過程で生じた問題解決のメモです。 RDBMSのスキーマにおいて、 外部キーでエンティティ間に関連を持たせる場合 自動採番するIDを主キーとする…

データベースを利用するアプリケーション(データベース接続)

はじめに 次の記事の続きです。 torutk.hatenablog.jp データベースの作成が終わったら、いよいよアプリケーションからデータベースへ接続してデータの読み書きをします。 JDBC API Java SEではRDBMSを利用する標準APIとしてJDBC(Java DataBase Connectivit…

データベースを利用するアプリケーション(データベース作成)

はじめに 続きです。 torutk.hatenablog.jp 今回は、データベースにテーブルを定義し、アプリケーションから利用できるようにします。 利用するデータベースは先の日記に記載のとおり、SQL Serverです。 データベースの作成ツール SQL Server Express Editio…

Microsoft SQL Server JDBCドライバーにmodule-info定義を追加してモジュール対応

はじめに Microsoft SQL Server JDBCドライバーのモジュール対応(module-info.classの組み込み)を試みました。経過をメモします。 経緯 SQL Server JDBCドライバーは、自動モジュール対応までしており、モジュールアプリケーションから利用できます。自動…

データベースを利用するアプリケーション(作成準備編)

動機 先月から折れ線グラフで表示するプログラムをJavaFXで作っています(自宅や出張中の宿で細々とです。出張先では通勤時間とか家事とかがないので捗りました)。 torutk.hatenablog.jp スペクトラム・アナライザのデータをファイルから読み込む機能を持た…

JavaFXでGUI全体のフォントをCSSで指定

はじめに 前回のブログの続きです。 torutk.hatenablog.jp 画面の国際化対応で日本語プロパティを追加してみました。その際使用される日本語のフォントはJavaのコードやCSSでコントロール毎に指定可能ですが、全体を変更することも可能です。 CSSのrootセレ…

JavaFXのグラフの凡例部分を操作可能にする

はじめに 先週書いた次のブログの続編です。 torutk.hatenablog.jp 一つのグラフ表示領域に、複数のグラフ(Series)を重畳表示した際に、簡単な操作でそれぞれのグラフを非表示にしたり表示したりとできると使い勝手が向上します。 グラフに凡例を表示した…

JavaFXで折れ線グラフを出そうとしてみた

はじめに(お題) 電気信号を時間領域から周波数領域に変換し、周波数に対するエネルギー量を解析できる測定器にスペクトラム・アナライザがあります。今回、このスペクトラム・アナライザで解析した結果をファイルに保存し、別な場所にあるPC上でその結果を…

インターネットとつながらないソフトウェア開発環境で使うツール

前提 ソフトウェア開発環境がインターネットと隔離されていることは、昨今のセキュリティ事情からよくあることと思います*1。ソフトウェアエンジニアの場合、事務作業で使うPC環境とは別にソフトウェア開発用のPC環境があり、それは事務作業で使うネットワー…

JavaFXアプリケーションでユーザーが編集可能なCSSファイルを置くには

問題 JavaFXアプリケーションを作成する際に、画面のレイアウトをFXMLで記述、色やフォントなどの見栄えをCSSファイルに記述し、FXMLのルートノードにCSSファイルを指定しました。模式的なソースファイル構成は次のようになります。 myapp +-- src +-- mypac…

gitのリリースタグをアプリケーションのバージョン表記に使う

はじめに JavaとJavaFXで小さなスタンドアロン・アプリケーション(ユーティリティ)を作成、使用するマシンに配置し、使い勝手を見ながら改善しています。使用しているJavaの種類は、JavaFXを内蔵しているAzul Systems社のOpenJDKであるZuluFX 11で、モジュ…