Hi Chever,  thank you for asking great questions!

Who should be the actual controller of this account?
>

In my perception, it should be the APISIX committers and PMCs, and the
maintainers of this project.



The second question is if there is a better management tool, such as
> Gradle, do we need to publish Gradle dependencies?


This issue has been discussed on the mailing list before, and the first
question that needs to be answered is: What can Gradle solve that Maven
can't? There is no need to switch from apisix-java-plugin-runner to Gradle
for the time being, and the jar built by this solution can be used by
Gradle-built projects.



how to maintain the dependencies continuously, and do I need to consider
> CI/CD?
>

I'm not quite sure what exactly you mean by dependencies.

CI/CD is required if you are talking about setting up automatic release and
push to maven center in Github Action, and this step should be in the later
stages.


*ZhengSong Tu*
My GitHub: https://github.com/tzssangglass
Apache APISIX: https://github.com/apache/apisix


在 2022年6月23日 08:32:22 上,Chever John <cheverjonat...@gmail.com> 写道:

> Hi Eric!
>
> Thanks for your work!
> It is common practice to publish packages to a central maven repository.
>
> It has many benefits, such as dependency management, automation, repeatable
> builds, etc. Also, it has disadvantages; you will spend a lot of time if
> you don't master enough. But I think the benefits outweigh the drawbacks.
>
> Let me conclude that I agree with the proposal.
>
> But before you do, I think you should consider a few things.
>
> The first question is, as far as I know, managing maven dependencies
> requires an account or password. Who should be the actual controller of
> this account?
>
> The second question is if there is a better management tool, such as
> Gradle, do we need to publish Gradle dependencies?
>
> The third question is, how to maintain the dependencies continuously, and
> do I need to consider CI/CD?
>
> Best wish
> CheverJohn
>
> On Jun 23, 2022 at 07:00:16, Eric Liu <erikice...@gmail.com> wrote:
>
> Hello everyone, my name is Eric Liu and I am a Google Summer of Code 2022
>
> student working with ZhengSong Tu.
>
>
>
> I want to optimize apisix-java-plugin-runner by deploying its JAR to Maven
>
> Central, allowing users to build plugins without having to clone the source
>
> code.
>
>
> So far I have
>
>
>   1.
>
>
>   Deployed a test JAR to Maven Central under my GAV coordinates (
>
>   https://search.maven.org/search?q=io.github.ericluoliu)
>
>   2.
>
>
>   Created a Demo Java Project (
>
>   https://github.com/ericluoliu/DemoAPISIXJavaProject), demo includes:
>
>   1.
>
>
>      Main Class
>
>      2.
>
>
>      Demo Filter Class (implements PluginFilter)
>
>      3.
>
>
>      POM.xml including maven spring boot plugin and coordinates to *Maven
>
>      Central JAR*
>
>      4.
>
>
>      Properties file
>
>      3.
>
>
>   Tested Demo Java Project by:
>
>   1.
>
>
>      Building executable JAR with command $mvn clean package
>
>      2.
>
>
>      Running java-plugin-runner-process (with appropriate environment
>
>      variables) alongside APISIX process and using curl commands to verify
>
>      communication between APISIX and java-plugin-runner over
>
> /tmp/socket.file
>
>
>
> Releasing APISIX Java-Plugin-Runner to Maven would simplify the java-plugin
>
> development process, increasing user productivity and drawing more
>
> developers to both APISIX and apisix-java-plugin-runner. Relevant PR can be
>
> found here: https://github.com/apache/apisix-java-plugin-runner/pull/153.
>
>
> I would love to hear everyone's thoughts on this.
>
> Thanks!
>
> ~Eric Liu
>
>
>

Reply via email to