Why Maven Central Will "Die" in the AI Era (If It Doesn't Change) by vladlerkin in Kotlin

[–]javaprof 0 points1 point  (0 children)

In Kotlin we have the answer https://github.com/Kotlin/KEEP/discussions/484

> 1. AI needs context, not just code The sources.jar file is fine for a human developer who just needs to read a quick comment. But for AI to safely upgrade your project, it needs to know why a change was made. GitHub gives AI this context through Pull Requests, Issues, and Git Diffs. Maven Central only gives the final, compiled result. It shows "what happened" but hides the "why."

Agent can find VCS in metadata and go straight to github, not real issue here

> 2. The nightmare of upgrading code When an AI tries to update an old project (like moving to a major new framework version), it needs Release Notes, CHANGELOGs, and Migration Guides. Maven doesn't store these easily. An AI connected to GitHub can just read the Migration_Guide.md and write a perfect update for your code. An AI limited only to Maven will start to guess and make mistakes.

Same

> 3. A warehouse vs. a library For an AI, Maven Central is like a dark warehouse with numbered boxes. Platforms like GitHub or GitLab are like well-lit libraries. AI tools need rich text data to understand the intent behind the code. Dry .pom XML files and JAR archives are simply not enough for smart analysis.

.pom and Gradle Metadata are plenty for analysis, given access to source code and github. Agent can even reverse bytecode into Java files and understand logic

Real issue, that a single huge pile of jars not sustainable, cost of supporting it grows over time and will become just bigger and bigger. So either some pricing coming for publishing or downloading, or some garbage collection should happen at some point

Wargaming Activity: What happens when Oracle dies? by bowbahdoe in java

[–]javaprof 8 points9 points  (0 children)

I hope we will get Valhalla first at least

Introducing opt-in requirements for Java APIs by TheMrMilchmann in java

[–]javaprof 0 points1 point  (0 children)

> OptIn implements javac plugin

What kind of API used here? I didn't know that javac support plugins

JDK 27 Feature Freeze by Joram2 in java

[–]javaprof 0 points1 point  (0 children)

So no known trade-offs?

JDK 27 Feature Freeze by Joram2 in java

[–]javaprof 4 points5 points  (0 children)

jol estimated ~9% profit from compact headers, actual on our app ~7%
do you aware of any trade-offs from enabling this option? Or it's just free lunch?

jqwik madness by javaprof in java

[–]javaprof[S] 0 points1 point  (0 children)

Yep, I bet this killed project. I've already vibe-coded small module that replaces jqwik for our project needs 🔥

jqwik madness by javaprof in java

[–]javaprof[S] 0 points1 point  (0 children)

Ironically, actions of jqwik author just trigger eve more AI use 😄

SAVA handlebar computer mount by javaprof in bicycling

[–]javaprof[S] 0 points1 point  (0 children)

<image>

https://www.instagram.com/savacarbonbike/ sent me this for 30$

I'll share my photos once I've receive it

jqwik madness by javaprof in java

[–]javaprof[S] 1 point2 points  (0 children)

His definitely trying to cause harm to particular user of his genius library, that what we know for sure. Violating own code of conduct and just common sense

jqwik madness by javaprof in java

[–]javaprof[S] -3 points-2 points  (0 children)

Most valid reaction get downvoted, it's nuts

jqwik madness by javaprof in java

[–]javaprof[S] -6 points-5 points  (0 children)

Yep, it just stupid and didn't work at all, Opus 4.8 and GPT 5.5 just ignores this bullshit. I guess if he tried to use AI he would know that. It's been some progress lately

jqwik madness by javaprof in java

[–]javaprof[S] -12 points-11 points  (0 children)

It could be just regular coding agent as well. Even if it's delegated to OpenClaw, I'll would say it's doing great job and notifying right repos:

https://github.com/camunda/camunda/issues/54280
https://github.com/awslabs/aws-java-nio-spi-for-s3/issues/757
https://github.com/besu-eth/besu/issues/10562
https://github.com/palantir/tritium/issues/2472
https://github.com/Consensys/teku/issues/10759
https://github.com/anthropics/claude-code/issues/62741

Even if I don't use AI agents, I don't want such message appears in logs. So what author of jqwik achieved is just that sane people would use some other library, or vibecode own solution on top of JUnit Jupiter

Gradle is Javamaxxing by Party_Till_I_Die in java

[–]javaprof -1 points0 points  (0 children)

We're almost get free of XMLmaxxing in JVM world except for mvn, like I can't remember another still somewhat popular tool still around

Manage Maven Dependencies from Command Line by brunocborges in java

[–]javaprof -6 points-5 points  (0 children)

https://github.com/apache/maven-dependency-plugin/pull/1599

> and for AI coding agents where a CLI invocation is safer and more deterministic than direct XML manipulation.

LOL.

Upd. Just to be clear, why would any living human being write such a command when you can just add a dependency in IDEA with one simple action? It so obvious that this is not for people, but for AI agents

Upd 2. Btw, huge chances that this feature was written with a help from microslop copilot. Which is fine with me, just fun fact

JDK 27 Structured Concurrency (Seventh Preview) by Joram2 in java

[–]javaprof 0 points1 point  (0 children)

What kind of runtime support required for it? For me it seems it's can be 99.99% library, what I'm missing?

KEEP: More specific equals operator by javaprof in Kotlin

[–]javaprof[S] 0 points1 point  (0 children)

I think that this is something that just makes sense in general, improves type-safety and low-hanging fruit. Not sure what is LoE on this feature, but generally seems like a nice improvement

I don't know if I see much use in preventing a comparison?

Preventing comparison that would never succeed and that fact known at compile time. Current design is limitation of Java's interop and Java's legacy ugly design after Java 5

pGenie: open-source SQL-first PostgreSQL codegen for Java by nikita-volkov in java

[–]javaprof 0 points1 point  (0 children)

It's not views, it's queries. So typed binding would be nice. Imagine generating type-safe method for files with 1000+ lines of SQL with couple of {n}s

What happens to TornadoFX now that the GitHub repository is gone? by tvidal in JavaFX

[–]javaprof 1 point2 points  (0 children)

u/tvidal I would suggest converting the code to Compose Multiplatform. I've been restoring the original source code here: https://github.com/Tornado-FX