Confluence Plugin/atlas-run support with Confluence 8.3+

Has anyone have any luck getting a new Confluence plugin working with a Confluence 8.3+ target? I typically setup an enviroment with Atlassian Plugin SDK’s atlas-create-confluence-plugin call, followed by adjusting the pom.xml to target the specific Confluence version to use.

However, after triggering atlas-run and seeing Confluence start up, any connection to the Confluence instance shows the following error:

Could not load bootstrap from environment
ClassNotFoundException: org.h2.tools.Server

I’ve seen others talk about how newer versions of Confluence no longer have h2 since it’s no longer supported in production. But is there a proper way to enable it for a developer case such as this? Or is there a way to configure the plugin development environment to use an external database now?

I cannot say I’m an expert in Maven, but the only other thing I have tried is to manually added h2 support by adding this dependency into my plugin’s pom.xml file:

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <version>1.4.200</version>
    <scope>runtime</scope>
</dependency>

Although, this did not change the result.

Any help is appreciated.

Found a workaround for this situation. When invoking atlas-run, providing an explicit indication to load h2 libraries seems to resolve the issue:

atlas-run ... --lib-plugins com.h2database:h2:1.4.200

No changes required for a project’s pom.xml.

1 Like

This issue was fixed in a recent version of AMPS:

https://developer.atlassian.com/server/framework/atlassian-sdk/amps-8-6-0/

Enhancement / Features:

  • AMPS-1608 - Automatically download H2 JAR for Confluence

See previous threads here:

Also note that these recent versions of AMPS require a more recent version of Maven than is installed with the SDK by default. See: AMPS 8.3.1 build failure - #2 by ccurti