How to implement an JIRA Importer Plugin with an own JiraDataImporter

In order to synchronize issues from another instance of JIRA, that is run by another partner, we have to exchange issues by a manual export in one Jira Instance, and to import it in our own jira instance on a regular base.

Currently the functionality of the Importer Module is quite limited.
Especially it is not possible to reimport issues (and to update existing issues).

Therefore we would like to write our own import plugin.
We started with the “Tutorial - Writing custom importer using JIRA importers plugin”, however we require to redefine/extend the com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.

Unfornately the package com.atlassian.jira.plugins.importer.imports.importer.impl is not exported, so we resorted to implementing the interface com.atlassian.jira.plugins.importer.imports.importer.JiraDataImporter…

However also this interfaces refers again to com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterExecutionContext, which is again the non-exported package.

Question: How can I define my own JiraDataImporter, or inherit from an existing DataImporter? (Without redefining the complete Data Importer Plugin)

Thank you for your kind support


Sorry, just as an addendum the error message when the plugin is loaded:

[INFO] [talledLocalContainer]                   Error creating bean with name 'XMLDataImporter' defined in URL [bundle://168.0:0/META-INF/spring/context.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: com/atlassian/jira/plugins/importer/imports/importer/impl/customfields/CustomFieldsUtil