Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Make litiengine modular #437

Open
weisJ opened this issue Dec 31, 2021 · 1 comment
Open

Make litiengine modular #437

weisJ opened this issue Dec 31, 2021 · 1 comment

Comments

@weisJ
Copy link
Contributor

weisJ commented Dec 31, 2021

It would be nice to have litiengine be a modular jar:

  • It allows consumers of the library to bundle their game using jpackage
  • Currently the utiLITI executable created by jpackage isn't fully self contained (as it's not a modular jar)
    i.e. on windows the /app directory is also necessary as it contains all dependencies. For fully modular projects
    it's possible to package all dependencies in the resulting jar making it portable.

As the engine is already build using a newer java version (>= Java 9) being compliant with the module system shouldn't be a big problem ... except:

  • jinput isn't modular (this isn't a big problem as it can be used as an automatic module without much headache)
  • Most of the soudlib.* dependencies behave have split packages (i.e. multiple jars contain the same packages or even the same classes). This is really unfortunate as it is a hard blocker for going modular. A possible workaround would be to fork the repository and modify the build process to produce compatible jars.

Any thoughts on this?

@Gamebuster19901
Copy link
Contributor

Just thinking... if litiengine was modular, I think we could have (an updated version of) #326 as an optional modular component, probably under a different repository though.

What do you guys think?

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

2 participants