タグ

ブックマーク / blog.64p.org (4)

  • Java の AST を解析できる javaparser がアツい!!! - tokuhirom's blog

    https://github.com/javaparser/javaparser javaparser は Java をパースして AST にしてくれるライブラリである。 この手のライブラリは数多あるのだが、ほとんどのものが Java 1.5 ぐらいでメンテナンスが止まっている。 実際このライブラリもメンテナンスが止まっていたのだが、Java 1.8 対応版とし開発が再開されたものだ。 このライブラリはパーサーライブラリであるから、文字列をパースして AST を構築してくれるというものになっている。 実際どのような AST が構築されるのかが気になるところなので、構築された AST をダンプできるツールを groovy で書いた。 #!/usr/bin/env groovy @Grab('com.github.javaparser:javaparser-core:2.1.0') impor

    toenobu
    toenobu 2015/11/03
  • JavaMail をモッキングしてテストしたい。 - tokuhirom's blog

    Java でメールを送るなら JavaMail で送るのが普通らしい。 とはいえ、生の JavaMail で書いてるとダルいので適宜以下のようにラッパをかましたりする。 文は Freemarker で処理する、的な。Fluent interface っぽくてクール。 当はいぜん Perl で書いていたような、Template file 側に Subject 入れられるようなのを書きたいが、書く時間がない。 誰か書くのを待つか、だれかが教えてくれるのをじっと待とう。 public class OreMailer { private final MimeMessage message; private final Configuration freemarkerConfiguration; public OreMailer(Class<?> klass) throws IOExceptio

    toenobu
    toenobu 2015/02/13
  • [java] どのブランチから作られた jar かをわかりやすくしたい - tokuhirom's blog

    どのリビジョンが実際にデプロイされてるかをその場ですぐに確認したいというような要求がある。 そういうわけで、jar の中にリビジョン情報などを埋め込みたい。 そんなときには git-commit-id-plugin が便利。 https://github.com/ktoso/maven-git-commit-id-plugin 設定がごちゃごちゃと書いてあるが、ごちゃごちゃ書かなくても OK である。 以下のように書けばOK。 <build> <finalName>${project.artifactId}-${project.version}-${scmBranch}-r${buildNumber}-</finalName> <plugins> <plugin> <groupId>pl.project13.maven</groupId> <artifactId>git-commit-id

    toenobu
    toenobu 2015/02/05
  • LL から Java に移行した人がはまりがちなこと - tokuhirom's blog

    こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl

    toenobu
    toenobu 2014/10/02
  • 1