はしくれエンジニアもどきのメモ

情報系技術・哲学・デザインなどの勉強メモ・備忘録です。

Windows10にPlantUML環境を作る

Windows10にPlantUML環境を作る

Windows10環境で, コマンドプロンプト(cmd)からPlantUMLを動作させるメモ.

環境

  • Windows10 64bit

必要なファイルをインストール

Java(OpenJDK)のDL,インストール

PlantUMLでJavaで動作するのでJavaをDLする.

JDK 13.0.1 GA Release

今回は最新のopenJDK 13.0.1のzipをDLする.

解凍したら適当な場所において,環境変数を通しておく. (Java系のソフトはJAVA_HOME環境変数をよく使うので\binを設定し,PATHにも通しておく.)

動作確認する.バージョンが表示されればインストールok.

> java --version
openjdk 13.0.1 2019-10-15
OpenJDK Runtime Environment (build 13.0.1+9)
OpenJDK 64-Bit Server VM (build 13.0.1+9, mixed mode, sharing)

GraphVizのインストール

図によってはGraphVizを使うのでインストールしておく.

今回は,stable2.38のインストーラをDLしてインストールする.

https://www.graphviz.org/download/

環境変数GRAPHVIZ_DOTにも設定しておき,PATHにも通す.

動作確認する.

dot -v

dot - graphviz version 2.38.0 (20140413.2041)
libdir = "C:\Program Files (x86)\Graphviz2.38\bin"
Activated plugin library: gvplugin_dot_layout.dll
Using layout: dot:dot_layout
Activated plugin library: gvplugin_core.dll
Using render: dot:core
Using device: dot:dot:core
The plugin configuration file:
        C:\Program Files (x86)\Graphviz2.38\bin\config6
                was successfully loaded.
    render      :  cairo dot fig gd gdiplus map pic pov ps svg tk vml vrml xdot
    layout      :  circo dot fdp neato nop nop1 nop2 osage patchwork sfdp twopi
    textlayout  :  textlayout
    device      :  bmp canon cmap cmapx cmapx_np dot emf emfplus eps fig gd gd2 gif gv imap imap_np ismap jpe jpeg jpg metafile pdf pic plain plain-ext png pov ps ps2 svg svgz tif tiff tk vml vmlz vrml wbmp xdot xdot1.2 xdot1.4
    loadimage   :  (lib) bmp eps gd gd2 gif jpe jpeg jpg png ps svg

plantuml.jarのDL

plantUMLはこのjarファイルから実行できるので,このjarファイルをDLして適当な場所に置く.

今回は,最新のVersion 1.2019.13をダウンロードしておく.

ダウンロードのページ

jarファイルの場所を環境変数PLANTUMLで作っておく.

実行方法

javaからplantuml.jarを実行することでplantumlの画像を生成できる.

java -jar plantuml.jar <file>.pu

ただし,カレントディレクトリにjarファイルがないと相対パスで指定しなかればならず指定が面倒なので, batファイルplantuml.batを作っておく.

REM platuml.bat
java -jar %PLANTUML%\plantuml.jar -charset UTF-8 %*

以下のファイルを実行してみる.

@startuml
Alice->Alice: This is a signal to self.\nIt also demonstrates\nmultiline \ntext
@enduml
plantuml test.pu

AliceAliceThis is a signal to self.It also demonstratesmultilinetext
test.pu