Skip to content

[DRAFT] [ZEPPELIN-5722] Improve PluginManager - #4355

Draft
Reamer wants to merge 9 commits into
apache:masterfrom
Reamer:plugin_shade
Draft

[DRAFT] [ZEPPELIN-5722] Improve PluginManager#4355
Reamer wants to merge 9 commits into
apache:masterfrom
Reamer:plugin_shade

Conversation

@Reamer

@ReamerReamer commented Apr 14, 2022

Copy link
Copy Markdown
Contributor

What is this PR for?

This pull request extends the existing PluginManager. The Java Plugin Framework PF4J is used for this purpose. My goal of this change is a better separation of Java libraries to avoid overlapping dependencies.
The following change after this PullRequest makes sense to me:

  • Definition of plugin configurations in the plugin itself and not in the big ZeppelinConfiguration class
  • Further outsourcing of components from the zengine, e.g. hadoop, lucene, cron

What type of PR is it?

  • Improvement

Todos

  • - Documentation
  • - License file

What is the Jira issue?

How should this be tested?

  • via CI and manual

Screenshots (if appropriate)

Questions:

  • Does the licenses files need update? Yes
  • Is there breaking changes for older versions? Yes
  • Does this needs documentation? Yes

@jongyoul

Copy link
Copy Markdown
Member

I like this kind of improvement :-) BTW, did you have any experience with PF4J before? I heard it for the first time so I just wonder if you are already familiar with it or not.

@Reamer
Reamer marked this pull request as draft April 19, 2022 06:06
@Reamer

Copy link
Copy Markdown
ContributorAuthor

BTW, did you have any experience with PF4J before? I heard it for the first time so I just wonder if you are already familiar with it or not.

Not at all, I came across the project with with a quick Google query "Java Plugin Framework".
The project is under the Apache 2 license and it seems to be actively maintained. There is also good documentation, so the integration into Zeppelin was quite easy.

@jongyoul

Copy link
Copy Markdown
Member

Thank you for the reply. I feel like it's fairly enough.

@Reamer

Copy link
Copy Markdown
ContributorAuthor

@zjffdu For a first feedback I would be very grateful.

Comment threadzeppelin-zengine/pom.xml Outdated
@Reamer

Copy link
Copy Markdown
ContributorAuthor

@jongyoul
I've been thinking about this approach for a while, and I think I wanted to use the pf4j library to compensate for the lack of hk2 in zeppelin-zengine. What do you think about including hk2 on in the zeppelin-zengine module?

@jongyoul

Copy link
Copy Markdown
Member

What do you think about including hk2 on in the zeppelin-zengine module?

I, totally, agree with you. It would be better to adopt it but to do it, we might need effort to do it. Do you have any idea to do it? Otherwise, we could add some code to ZeppelinServer to enable them.

@github-actions

Copy link
Copy Markdown
Contributor

This pull request has been inactive for over a year. If no further activity occurs within the next 30 days, it will be automatically closed. If you believe this PR is still relevant, please feel free to leave a comment or make an update. Thank you!

@Reamer

Copy link
Copy Markdown
ContributorAuthor

The implementation still needs to be thought through.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Reamer@jongyoul@zjffdu