goo blog サービス終了のお知らせ 

ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

AsakusaFWでLocalDateTime

2021-12-14 00:00:00 | PG(分散処理)

AsakusaFW & Tsurugi Advent Calendar 2021の14日目です。

AsakusaFWはJava8なので、Java8の日付時刻APIのLocalDateTime等を使用することは出来ます。

ただ、AsakusaFWが用意しているDateUtilは、java.util.Dateやjava.util.Calendarとの変換メソッドは提供されていますが、日付時刻APIのものは提供されていないんですよね。
AsakusaFWのDateTimeも日付時刻APIのLocalDateTimeもyear,month,day,hour,minute,secondの取得やそれによる値の設定は出来るので、それを使うのが確実です。(が、実行効率的に、もうちょっと良い方法がありそうな気はします^^;)

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AsakusaFW emptyとstopをつないだらどうなるか?

2021-12-13 00:00:00 | PG(分散処理)

AsakusaFW & Tsurugi Advent Calendar 2021の13日目です。

AsakusaFWではcore.emptyで空(0件)の入力を作り出し、core.stopでレコードの出力を無しにします。
では、core.emptyを直接core.stopに繋いだらどうなるか?
試してみました。

実行計画上、特に何も出てきませんでした。
完全に無視され、実行に対する影響は全く無いということが分かりました。

いかがでしたか?
よろしかったら高評価を(ry

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

asakusaコマンドのJavaバージョン

2021-12-12 23:28:26 | PG(分散処理)

AsakusaFW & Tsurugi Advent Calendar 2021の12日目です。

AsakusaFWにはasakusaコマンドというCLIがあって、Windowsからも使用できるのですが、Windows上のJavaがJava8より新しいと動作しないようです。
asakusa.cmdの中で「java」でJavaを実行しているので、実行環境上の(最新の)Javaが使われてしまうようですね。

とりあえず、環境変数JAVA_HOMEにJava8のパスを設定した上で、asakusa.cmdの中を「"%JAVA_HOME%\bin\java"」にすれば解決します。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AsakusaFW Operatorの親クラスの警告

2021-12-12 23:12:41 | PG(分散処理)

AsakusaFW & Tsurugi Advent Calendar 2021の11日目です。

AsakusaFWのOperatorクラスを記述するとき、親クラスからextendsすると、非推奨であるという警告が出ます。
この警告を@SuppressWarningsで消すことは出来ないようです。

個人的には、ツールでOperatorクラスを自動生成するようなケースでは、その中で使うメソッドを親クラスに定義しておくと便利だと思うのですが、たいていは「static importすれば?」と言われて終わっちゃうんですよねorz
static importがオーバーライドできるなら、それでも良いんですけどねぇ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Shafu アノテーションプロセッサーエラー

2021-12-10 00:00:00 | PG(分散処理)

AsakusaFW & Tsurugi Advent Calendar 2021の10日目です。

最新版のEclipseにShafu(AsakusaFWのEclipseプラグイン)を入れた際のトラブルその2です。

通常だと、OperatorクラスやFlowPartクラスを作るとFactoryクラスが自動的に生成されるのですが、生成されないorz
どうも、新しいEclipseでは(Eclipseの実行に使われる)Javaのバージョンが上がり、javax.annotationが無くなったらしく、そのせいでアノテーションプロセッサーがエラーになったらしいです。

ひとまず、javax.annotationをbuild.gradleに追加すると、アノテーションプロセッサーが動くようになります。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする