Re: Building JAVA-applications with maven
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 10 Dec 2021 20:09:52 UTC
> On 07.06.16 20:46, Kurt Jaeger wrote: >> A Uses/maven.mk sounds non-trivial, but very, very useful, if >> it covers the generic use-case of maven-built ports. > > 4 years later, has anyone done anything on this matter? I may have some > free time later this month, if not... > > I think, creating devel/log4j2 will be a good "test-bed"... Maven PMC here. I highly recommend not doing and I will explain why: The approach to dependencies of Maven, npm, composer, pip goes against an offline build required by the ports system. All py-packages are repackaged to what pip does, this is work. Caching libs and POMs from Maven Central absolutely does not make sense. Both Maven Central and ASF dist use a fully distributed CDN by now. There is no compelling reason to recompile the software at all. All dependencies are available cryptographically signed in Maven Central. If your application uses Maven, it will *not* use the port from the ports system. Repackaging what is in Central is a waste of time, IMHO. Another issue comes with custom build: Many Linux distro dissect or modify blessed packages like Maven or Tomcat beyond recognition and the first thing we ask is: Where did you get Tomcat or Maven? Not from us? GO AWAY. I am currently the maintainer of the Nexus 2 OSS and use the bundle tarball only, I do not even try to compile myself since it gives from a Java PoV no benefit compared to native langs like C/C++/Rust/Go/YOU_NAME_IT. There are situations where a port makes sense, not necessary recompiled Java code, e.g., a JDBC driver which is loaded into Tomcat and not part of the application or the library requires native code which I would want to compile, e.g., https://github.com/xerial/sqlite-jdbc/issues/495. Looking at https://www.freshports.org/java I am certain that most of those ports can go away. I am happy to step into a discussion if you are interested in. This is me, BTW: http://home.apache.org/phonebook.html?uid=michaelo Michael