使用plantuml生成uml时序图


主要包括以下三步:

1. 下载plantuml.jar 配置到本地环境变量方便直接本地使用
http://plantuml.com/download 
https://sourceforge.net/projects/plantuml/files/plantuml.jar/download

将这个软件放置到某目录,如~/toolkit/design/plantuml/plantuml.jar
对于linux可以修改~/.bashrc,新增一行,保存退出并重新登录
alias plantuml="java -jar ~/toolkit/design/plantuml/plantuml.jar "

也可以将以下文本拷贝到plantuml.sh脚本中,且放在和plantuml.jar同一个目录

#! /bin/bash
# 
####################################################
# Author      : longbin
# Created date: 2019-03-21 10:57:44
####################################################
function plantuml()
{
    if [ $# = 0 ] ;then
        echo "ERROR: invalid param, please figure plantuml source code text file"
        return
    fi
    local cur_dir=$(dirname $0)
    local plantumljar=${cur_dir:=$(pwd)}/plantuml.jar
    # echo "${plantumljar}"
    if [ -f ${plantumljar} ] ;then
        java -jar ${plantumljar} $*
    fi
}
plantuml $*


将以上文本拷贝到plantuml.sh脚本中,然后在.bashrc中添加命令别名,如
alias plantuml="bash ~/toolkit/design/plantuml/plantuml.sh "
重新开启终端即可使用plantuml命令;
2. 编写uml代码,保存到alice.uml

@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response

Alice -> Bob: Another authentication Request
Alice <-- Bob: another authentication Response
@enduml

再来一个复杂一点的onstar.uml

@startuml                                                                                                           
header onstarservice start seq
autonumber
    HMI -> ICI: start onstar
    ICI -[#red]>> onstar: GMLAN_Send_PhoneSpeechRecReq
== onstar req src 52, and play VR/TTS ==
... delayed about 1s sometime ...
    ICI <<[#0000FF]-- onstar: produce available src 52
|||
    ICI -[#black]>> audio: Request_Source_Activation
    audio -> audio: req src 52
    ICI <<--[#black] audio: AM_AUDIO_CONN_RES granted
    ICI -[#red]>> onstar: Request_GMLAN_Connect
    ICI <<[#0000FF]-- onstar: Producing_Silence
|||
    ICI -[#black]>> audio: Request_Source_Fade_To_Connection
    audio -> audio: fade in src 52
    ICI <<--[#black] audio: ON_AU_EV_UNMUTED
    ICI -[#red]>> onstar: Request_GMLAN_Connect_Complete
loop loop until onstar exit
    ICI <<[#0000FF]-- onstar: Producing_Audio
end
== show onstar homepage ==
... delayed about 0.5s ...
    ICI <<[#0000FF]-- onstar: active menu display event
    ICI -[#red]>> onstar: req menu title
    ICI -[#red]>> onstar: req menu list
    ICI <<[#0000FF]-- onstar: menu title
    ICI <<[#0000FF]-- onstar: menu list
    ICI -->> HMI: display onstar menu
@enduml

3. 使用命令生成UML图
3.1 默认生成png图片
  plantuml onstar.uml
3.2 生成svg图片
    plantuml -tsvg onstar.uml

参考资料
http://plantuml.com/zh/sequence-diagram
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值