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 > > >