manuelbl / JavaDoesUSB

USB library for Java
MIT License
136 stars 10 forks source link

Java 19 required #10

Closed Avec112 closed 1 year ago

Avec112 commented 1 year ago

The library is compiled and built with Java 19 which requires that all users of your library must have Java 19 or newer. This is probably not a very good option for many. I strongly recommend you build your library with Java 1.8 or at least Java 11 so more users can be reached. If more users is what you want of course. Anyways thx for your contribution.

Avec112 commented 1 year ago

After playing with your library. I will also add that preview features is not that practical for most users. I strongly recommend the version you publish to Maven Central should be downgraded quite a bit and preview features should not be included. You could also publish different versions for different java versions but I can't really see any point from a users perspective.

manuelbl commented 1 year ago

As documented, this library depends on the Foreign Function & Memory API(FFM). The FFM is still in preview and not a productive Java.

It does not exist in Java 1.8 and Java 11. And in Java 19, it is only available if preview features are enabled. So "downgrading" is not possible.

Avec112 commented 1 year ago

Okay I see. To bad. Would be nice to be able to use your library but 19 will probably be a long stretch for many. Thanks for your answer.