confluence插件开发(一): 搭建开发环境并进行项目创建和基本设置

本文介绍了如何搭建Confluence插件开发环境,包括安装SDK、创建项目、在安装插件的情况下启动Confluence以及利用QuickReload进行高效开发。详细步骤包括从官网下载SDK,通过命令行创建项目,启动Confluence并使用QuickReload实现快速修改插件后自动重启。

AI 驱动代码审查实战

Claude code-review 插件深度解析,把 AI 智能审查接进 CI/CD 流水线

该教程环境参数如下:

OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
Java version: 1.8.0_201, vendor: Oracle Corporation
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
ATLAS Version:    8.0.16
AMPS Version:     8.0.2

搭建开发环境

在搭建confluence的开发环境前,请确保已经安装了JDK8并配置好JAVA_HOME。

安装SDK

1、 从官网下载SDK
Windows:Atlassian Plugin SDK - Windows
Mac OS:Atlassian Plugin SDK - Mac OS X
Linux:在Linux系统上,需要使用包管理工具安装SDK,具体可以参看官方教程:在Linux或Mac系统上安装Atlassian SDK

2、 安装SDK
在Windows下,双击安装程序,按照引导进行安装。完成后运行atlas-version命令,可以看到类似的输出:

ATLAS Version:    8.0.16
ATLAS Home:       C:\Application\atlassian-plugin-sdk-8.0.16
ATLAS Scripts:    C:\Application\atlassian-plugin-sdk-8.0.16\bin
ATLAS Maven Home: C:\Application\atlassian-plugin-sdk-8.0.16\apache-maven-3.5.4
AMPS Version:     8.0.2
--------
Executing: "C:\Application\atlassian-plugin-sdk-8.0.16\apache-maven-3.5.4\bin\mvn.cmd" --version -gs C:\Application\atlassian-plugin-sdk-8.0.16\apache-maven-3.5.4/conf/settings.xml
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: C:\Application\atlassian-plugin-sdk-8.0.16\apache-maven-3.5.4\bin\..
Java version: 1.8.0_201, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk1.8.0_201\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

创建项目

进入SDK安装目录的bin目录下,运行atlas-create-confluence-plugin命令

cd atlassian-plugin-sdk/bin
atlas-create-confluence-plugin

该命令会使用confluence-plugin-archetype生成项目,屏幕上会打印出一些下载信息,待基本的jar下载完成后,会要求输入插件的信息:

Define value for groupId: : com.atlassian.tutorial
Define value for artifactId: : myPlugin
Define value for version: 1.0.0-SNAPSHOT: : 1.0.0-SNAPSHOT
Define value for package: com.atlassian.tutorial: : com.atlassian.tutorial.myPlugin

确认信息无误后,输入 Y 即可。
随后,等待maven构建,完成后会打印出基本框架项目的路径:

[INFO] Project created from Archetype in dir:  C:\Application\atlassian-plugin-sdk-8.0.16\bin\user-plugin
[INFO]  ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO]  ------------------------------------------------------------------------

在安装插件的情况下启动confluence

切换到项目目录并执行以下命令:atlas-run
这将使用原先创建插件框架中的信息来下载confluence及其所需要的插件,然后在安装插件的情况下启动confluence。

第一次执行需要下载很多依赖,会等待很长时间。如果war包因为网络不好下载不下来,可以手动下载,并放到目录下。
也有可能遇到运行出错的情况,可以直接执行日志中Executing:后的命令,并加上-X参数,来查看具体的错误原因。

一旦confluence启动,控制台会打印以下日志:

[INFO] [talledLocalContainer] 七月 21, 2019 9:55:12 下午 org.apache.catalina.startup.Catalina start
[INFO] [talledLocalContainer] 信息: Server startup in 309264 ms
[INFO] [talledLocalContainer] Tomcat 9.x started on port [1990]
[INFO] confluence started successfully in 365s at http://localhost:1990/confluence
[INFO] Type Ctrl-C to shutdown gracefully

在浏览器中访问:http://localhost:1990/confluence,登陆时用户名、密码均为admin。
访问: http://localhost:1990/confluence/plugins/servlet/upm 可以看到muPlugin这个插件。

如果插件不在”用户安装的应用“这个列表中,可以手动上传myPlugin/target/目录下的jar进行安装:
在这里插入图片描述

使用QuickReload修改插件

修改插件后,启动和停止confluence可能需要几分钟,使用QuickReload可以提高开发的效率。
1、检查pom.xml中是不是启用了QuickReload:
在build模块中,会看到如下的配置,确保enableQuickReload标签设置为true:

<build>
    <plugins>
        <plugin>
            <groupId>com.atlassian.maven.plugins</groupId>
            <artifactId>confluence-maven-plugin</artifactId>
            <version>${amps.version}</version>
            <extensions>true</extensions>
            <configuration>
                <productVersion>${confluence.version}</productVersion>
                <productDataVersion>${confluence.data.version}</productDataVersion>
                <enableQuickReload>true</enableQuickReload>

2、 在启动的状态下,打开另一个命令行窗口,输入 atlas-create-confluence-plugin-module,按照以下回答提示:

Choose a number (1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20): 15
[INFO] Google Analytics Tracking is enabled to collect AMPS usage statistics.
[INFO] Although no personal information is sent, you may disable tracking by adding <allowGoogleTracking>false</allowGoogleTracking> to the amps plugin configuration in your pom.xml
[INFO] Sending event to Google Analytics: AMPS:confluence - Create Plugin Module - confluence:Web Item
Enter Plugin Module Name My Web Item: : Atlassian Developers Site
Enter Section (e.g. system.admin/globalsettings): my-item-link/my-section
Enter Link URL (e.g. /secure/CreateIssue!default.jspa): http://developer.atlassian.com/docs
Show Advanced Setup? (Y/y/N/n) N: : N
[INFO] Adding the following items to the project:
[INFO]   [dependency: org.mockito:mockito-all]
[INFO]   [module: web-item]
[INFO]   i18n strings: 3
Add Another Plugin Module? (Y/y/N/n) N: : N

3、运行命令atlas-mvn package,完成后在第一个窗口,将会看到confluence的运行日志中打印了以下内容

[INFO] [talledLocalContainer] Quick Reload Finished (1727 ms) - 'myPlugin-1.0.0-SNAPSHOT.jar'

这说明QuickReload已经配置成功了。

运行命令atlas-mvn package,有可能会显示:
[ERROR] Unknown lifecycle phase “ m a v e n P l u g i n N a m e = {mavenPluginName}= mavenPluginName=mavenPluginName”.
由于我在IDEA中打开了项目,所以直接在终端运行mvn package,效果和atlas-mvn package是一样的。

AI 驱动代码审查实战

Claude code-review 插件深度解析,把 AI 智能审查接进 CI/CD 流水线

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值