JSM 10 Plugin Development validate-banned-dependencies issue

Hi,

I’m building a plugin use atlassian-plugin-sdk 9.1.1. The plugin should be running in JSM10. And I’ve upgraded to the following package:

com.atlassian.plugins.rest atlassian-rest-v2-api 8.2.0 provided

But I encountered a new problem, the error message says below:

— jira:9.1.1:validate-banned-dependencies (default-validate-banned-dependencies) @ jira-workflow-migrator —
[INFO] validate banned dependencies
[INFO] Dependencies excluded from banning:
[INFO] Platform version range: ‘[0,)’
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:24 min
[INFO] Finished at: 2025-11-05T11:42:50+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies (default-validate-banned-dependencies) on project jira-workflow-migrator: Execution default-validate-banned-dependencies of goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies failed: Cannot invoke “org.eclipse.aether.version.Version.toString()” because the return value of “org.eclipse.aether.resolution.VersionRangeResult.getHighestVersion()” is null → [Help 1]

Could anyone kindly help on this issue?

Regards,

Yaoqi Huang

Advise to use the pom.xml setup example from the jira-plugin-starter repository, especially the dependencyManagement configuration. This way, you won’t need to explicitly specify dependencies on Jira libraries.

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.atlassian.jira</groupId>
                <artifactId>jira-project</artifactId>
                <version>${jira.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
1 Like

Hi @mashintsev,

Not all packages are allowed so we have to fix the dependencies and versions. Could you kindly help me on how to fix the build error?

Regards,

Yaoqi Huang

Run package with debug to view all messages about exception.

atlas-package --debug

Hi @mashintsev.

The message says below:

[ERROR] Failed to execute goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies (default-validate-banned-dependencies) on project jira-workflow-migrator: Execution default-validate-banned-dependencies of goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies failed: Cannot invoke “org.eclipse.aether.version.Version.toString()” because the return value of “org.eclipse.aether.resolution.VersionRangeResult.getHighestVersion()” is null → [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies (default-validate-banned-dependencies) on project jira-workflow-migrator: Execution default-validate-banned-dependencies of goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies failed: Cannot invoke “org.eclipse.aether.version.Version.toString()” because the return value of “org.eclipse.aether.resolution.VersionRangeResult.getHighestVersion()” is null
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:333)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:903)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:280)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:203)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:569)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
at org.codehaus.classworlds.Launcher.main (Launcher.java:41)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-validate-banned-dependencies of goal com.atlassian.maven.plugins:jira-maven-plugin:9.1.1:validate-banned-dependencies failed: Cannot invoke “org.eclipse.aether.version.Version.toString()” because the return value of “org.eclipse.aether.resolution.VersionRangeResult.getHighestVersion()” is null
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:133)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:903)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:280)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:203)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:569)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
at org.codehaus.classworlds.Launcher.main (Launcher.java:41)
Caused by: java.lang.NullPointerException: Cannot invoke “org.eclipse.aether.version.Version.toString()” because the return value of “org.eclipse.aether.resolution.VersionRangeResult.getHighestVersion()” is null
at com.atlassian.maven.plugins.amps.PlatformDependenciesProviderImpl.determineArtifact (PlatformDependenciesProviderImpl.java:85)
at com.atlassian.maven.plugins.amps.PlatformDependenciesProviderImpl.readSingleArtifact (PlatformDependenciesProviderImpl.java:60)
at com.atlassian.maven.plugins.amps.PlatformDependenciesProviderImpl.getDependencies (PlatformDependenciesProviderImpl.java:52)
at com.atlassian.maven.plugins.amps.BannedDependenciesImpl.resolveDependencies (BannedDependenciesImpl.java:97)
at com.atlassian.maven.plugins.amps.BannedDependenciesImpl.getBannedElements (BannedDependenciesImpl.java:45)
at com.atlassian.maven.plugins.amps.MavenGoals.validateBannedDependencies (MavenGoals.java:342)
at com.atlassian.maven.plugins.amps.ValidateBannedDependenciesExecutor.execute (ValidateBannedDependenciesExecutor.java:42)
at com.atlassian.maven.plugins.amps.ValidateBannedDependenciesMojo.execute (ValidateBannedDependenciesMojo.java:44)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
at org.apache.maven.cli.MavenCli.execute (MavenCli.java:903)
at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:280)
at org.apache.maven.cli.MavenCli.main (MavenCli.java:203)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke (Method.java:569)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
at org.codehaus.classworlds.Launcher.main (Launcher.java:41)
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] PluginExecutionException - Apache Maven - Apache Software Foundation
[DEBUG] Shutting down adapter factory; available factories [file-lock, rwlock-local, semaphore-local, noop]; available name mappers [discriminating, file-gav, file-hgav, file-static, gav, static]
[DEBUG] Shutting down ‘file-lock’ factory
[DEBUG] Shutting down ‘rwlock-local’ factory
[DEBUG] Shutting down ‘semaphore-local’ factory
[DEBUG] Shutting down ‘noop’ factory

Regards,

Yaoqi Huang

How does your jira-maven-plugin configuration look in pom.xml? Is there a snapshot version for dependencies?

Hi @mashintsev,

No, there is no snapshot version, the pom looks like below:

<plugin>
    <groupId>com.atlassian.maven.plugins</groupId>
    <artifactId>jira-maven-plugin</artifactId>
    <version>${amps.version}</version>
    <extensions>true</extensions>
    <configuration>
        <productVersion>${jira.version}</productVersion>
        <productDataVersion>${jira.version}</productDataVersion>
        <enableQuickReload>true</enableQuickReload>
        <instructions>
            <Atlassian-Plugin-Key>${atlassian.plugin.key}</Atlassian-Plugin-Key>
            <Export-Package>com.company.team.api,</Export-Package>
            <Import-Package>org.springframework.osgi.*;resolution:="optional", org.eclipse.gemini.blueprint.*;resolution:="optional", !com.awnaba.projectconfigurator.*, *</Import-Package>
            <DynamicImport-Package>com.awnaba.projectconfigurator.*</DynamicImport-Package>
            <Spring-Context>*</Spring-Context>
        </instructions>
        <applications>
            <application>
                <applicationKey>jira-servicedesk</applicationKey>
                <version>${jira.servicedesk.application.version}</version>
            </application>
        </applications>
    </configuration>
</plugin>

Regards,

Yaoqi Huang

If you share the pom.xml, I can give you a recommendation on what to fix. It’s not clear from the current settings what the problem is.