高橋 徹 の活動
2020/03/10から2020/04/08まで
2020/04/05
- 高徹 15:09 ソフトウェアエンジニアリング つれづれ Java編: Gradleプロジェクト(JPMS対応)
- Gradleは今後のバージョンでJPMS(Java Platform Module System)に対応する予定なので、
現時点では限られた対応とするか、有志のプラグイン"Gradle Modules plugin":https://github.com/java9-modularity/gradle-modules-plugin を入れて対応する。
- 高徹 11:31 ソフトウェアエンジニアリング つれづれ Java編: Gradleプロジェクト(続)
- h4. Javaのバージョン指定
build.gradleの中身(前回とは別な例)
2020/04/04
- 高徹 22:47 ソフトウェアエンジニアリング 調査 #72: NetBeansのFindBugs IntegrationプラグインをSpotbugsに入れ替えできるか調査する
- SpotBugsは、バージョン3.1系はFindBugsとの互換性を極力保っていたが、4.0系はAPIの変更、削除がある。
SpotBugsのJava 9+への対応は今後(動作しないDetectorがいくつかある)。
出典
https://blog.kengo-toda.jp/entry/2020/02/17/223957
2020/03/30
- 高徹 00:13 ソフトウェアエンジニアリング つれづれ Java編: Gradleプロジェクト作成
- Gradleを使うJavaプロジェクトの作成手順を調査
* [Create New Project] > 左側ペインで[Gradle] > 右側ペインで[Java]にチェックを入れて次へ(以下に画面を示す)
{{thumbnail(GradleProject-1.png, size=320)}}
* プロジェクト名、プロジェクトの親フォルダ、グループID、アーティファクトID、バージョンを記入(以下に画面を示す)
{{thumbnail(Grad...
2020/03/29
- 高徹 18:00 ソフトウェアエンジニアリング つれづれ Java編: アンインストール
- Gradleプラグインは有効なのだが、新規プロジェクト作成時に左側ペインにGradleが表れない。
そこで一度IntelliJ IDEAをアンインストールしてインストールしようとして、アンインストールでトラブル発生。
Windowsの[設定]>[アプリ]>[アプリと機能]>[IntelliJ IDEA Community Edition 2018.3.4]>[アンインストール]をクリック
!uninstall_error-1.png!
エラーが発生。... - 高徹 11:28 ソフトウェアエンジニアリング つれづれ Java編: Ant利用(JPMS)
- Java SE 9以降でモジュールシステムを使ってアプリケーションをビルド・実行するためのAnt記述を調査。
Antで成果物(JAR)を作成するときに、Java SE 8までの実行可能JARを生成するオプションがjarタスクに用意されています。
しかし、Java SE 9以降で実行可能モジュールJARとするためのjarコマンドのオプション(@--main-class@)をjarタスクで指定する手段がありません(Antの仕様制限)。
そこで、execタスクで...
2020/03/16
- 高徹 00:03 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- h4. 複数NICのマシン上で使用するNICを特定してCORBA通信を行う方法
-ORBListenEndpointsを指定します。
h5. ネーミングサービスの起動
@D:\work> ns -ORBListenEndpoints iiop://192.168.1.108:3626@
ORBListenEndpointsでポート番号を固定したので、-DOAPort=3626 を省略してみたが接続可でした。
h5. ネーミングサービス管理画...
2020/03/15
- 高徹 23:20 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- h4. 気付き事項
NetBeansのプロジェクトペインで CounterIdlプロジェクトのソースパッケージの表示が変
!CounterIld_projectpain_generated-1.png!
ソースフォルダ名が[生成されたソース (com)]となっており、パッケージ名が[torutk.counter.idl]となっている。
IDLファイルから生成されるJavaソースファイルの出力先を、build/generated-sources で... - 高徹 22:49 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- 例外処理のコーディングメモ
* @ORB#resolve_initial_references(String name)@
→ org.omg.CORBA.ORBPackage.InvalidName 検査例外
* @POAOperations#activate_object(Servant servant)@
→ org.omg.PortableServer.POAPackage.ServantAlreadyActivate
→ org.omg.Port... - 高徹 22:29 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- h4. CORBA Counterクライアントのプロジェクトを作成し、プログラムを実装
* [ファイル]メニュー > [新規プロジェクト] > [Java] > [Javaアプリケーション]を選択し[次>]ボタン
プロジェクト名を[CounterClient]として作成
* srcの下に パッケージ com.torutk.counter.clientを作成し、中にMain.javaを作成
⇒ http://www.02.246.ne.jp/~torutk/j... - 高徹 21:54 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- h4. CORBA Counterサーバーのプロジェクトを作成し、実行プログラムを実装
* [ファイル]メニュー > [新規プロジェクト] > [Java] > [Javaクラス・ライブラリ]を選択し[次>]ボタン
プロジェクト名を[CounterServer]として作成
* srcの下に パッケージ com.torutk.counterを作成し、中にMain.javaとSimpleCounter.javaの2つを作成
⇒ http://www.02.24... - 高徹 18:42 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- h4. JacORBネーミングサービスの起動方法を調査
JacORB Programming Guide の「25.2節 NS」に記載あり。
コマンドラインで次のいずれかを実行するとある
# @ $ ns <ファイル名> [タイムアウト]@
# @ $ jaco jacorb.Naming.NameServer <ファイル名> [タイムアウト]@
ファイル名は、起動したネーミングサービスのIOR情報を書き込むファイル。
まず、1を試す。 - 高徹 05:54 ソフトウェアエンジニアリング 調査 #107: JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- JacORBにはIDLコンパイル用のAntタスクが添付されていた。(プログラミングガイドの25.1節 idl)
idldependではなく、JacORBのタスクを使用してみる。
* build.xml {{collapse
2020/03/14
- 高徹 23:35 ソフトウェアエンジニアリング 調査 #107 (進行中): JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- * JacORB 3.9 のバイナリをダウンロードし、@C:\Program Files\Java\@の下に展開(jacorb-3.9)
* NetBeans IDEの[ツール]メニュー > [ライブラリ]で、「Antライブラリ・マネージャ」画面を開き、[新規ライブラリ]で[JacORB 3.9]の名前を指定、クラスパスに次を追加
@C:\Program Files\Java\jacorb-3.9\lib\jacorb-3.9.jar@
@C:\Program F... - 高徹 21:31 ソフトウェアエンジニアリング 調査 #107 (進行中): JacORBを使ったCORBAサーバー・クライアントプログラムをNetBeansで作る
- 調査目的:
* JacORBを使ったCORBAクライアント・サーバーのプログラムをNetBeansで作る方法を確立する
NetBeansのAntプロジェクトでIDLのコンパイルを含めて構築方法を確立する
調査結果:
完了条件:
* 構築手順をWikiページ[[Java corba counter]]に記述する。
調査環境:
|_. OS| Windows 10 1909 64bit |
|_. Java| Java SE Deve... - 高徹 17:05 ソフトウェアエンジニアリング つれづれ Java編: NetBeans 8.2 CORBAプログラミングの徒然
- h3. プロジェクトの構成をどうしようかな?
NetBeans 8.2は、1プロジェクト1JAR制なので、CORBAクライアントとCORBAサーバーの2つのプログラムを開発する場合、少なくても2つのプロジェクトが必要。
また、IDLはプロジェクト間で共有(一元管理)したい。
ということで、CORBAプログラムのプロジェクトの構成は、
h4. 案1)2プロジェクト構成
# サーバー用のプロジェクト
# クライアント用のプロジェクト
IDL...
2020/03/12
- 高徹 20:16 ソフトウェアエンジニアリング 機能 #106 (進行中): Javaライブラリ(log4j)をWindowsインストーラー(MSI)化する
- 使用するツールの選択
オープンソース(無償)で手軽に(Visual Studio等の大物ソフトを入れることなく)MSI形式のインストーラーを作成するとしたら、WiX toolsetが候補となる。
WiX toolsetは現在バージョン3.11.2が最新だが、バージョン3.11はインストール時に.NET Framework 3.5を必須とし、なければエラーでインストールができない。
Windows 10に.NET Framework 3.5を入れるのはそれなりに... - 高徹 18:45 ソフトウェアエンジニアリング 機能 #106 (進行中): Javaライブラリ(log4j)をWindowsインストーラー(MSI)化する
- Javaのライブラリとしてlog4j 2.xを題材にWindowsインストーラー(MSI)を作成する。
完了条件:
log4j 2.xをWindowsインストーラー(MSI)でインストールできるようにする。インストールしたライブラリは、Java開発環境(NetBeans IDE)から利用し、かつ、アプリケーション実行時に利用できること。
その手順を明文化する。
使用するツール:
* WiX toolset 3.10
- 高徹 18:39 ソフトウェアエンジニアリング 調査 #105 (解決): 主要ダウンロード先サイトへのホップ数調査
- 高徹 18:38 ソフトウェアエンジニアリング 調査 #105 (進行中): 主要ダウンロード先サイトへのホップ数調査
2020/03/11
- 高徹 00:39 ソフトウェアエンジニアリング 調査 #72 (フィードバック): NetBeansのFindBugs IntegrationプラグインをSpotbugsに入れ替えできるか調査する
- 2020-03-11現在、FindBugsはバージョン3.0.1のまま停滞している。一方、SpotBugsは2020-02にバージョン4.0.0がリリースされている。
SpotBugs 4.0.0が依存するライブラリを調べる。spotbugs-4.0.0.jarのMETA-INF/MANIFEST.MFの記載