Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Fix building on eclipse #3584

Closed
wants to merge 1 commit into from
Closed

Conversation

Kas-tle
Copy link
Member

@Kas-tle Kas-tle commented Feb 27, 2023

https://github.com/KyoriPowered/indra/blob/main/3.x/indra-common/src/main/java/net/kyori/indra/internal/multirelease/IndraMultireleasePlugin.java#L540-L569 for its multi-release system Indra (net.kyori.indra) seems to make its own decisions about what should and should not be considered a JPMS module. This seems to occur because the isModule check seems to return true in many cases https://github.com/KyoriPowered/indra/blob/main/3.x/indra-common/src/main/java/net/kyori/indra/internal/ModularityDetecter.java#L53-L117.

The eclipse plugin can be used to undo this change, and adventure even has to do this for their logger: https://github.com/KyoriPowered/adventure/blob/main/4/text-logger-slf4j/build.gradle.kts#L36-L45.

Note that this only affects behavior for those using the Eclipse IDE (or other implementations of Eclipse Buildship such as the VSCode Java Language Extension). There is absolutely no change to the build process in any other circumstances.

I made a similar PR for issues with building eclipse in Floodgate (GeyserMC/Floodgate#381) and received some internal push back since Eclipse is much less common, especially among those that contribute to this project. But I really don't get this sentiment. I think it benefits Geyser and open source projects in general to make it as easy to contribute as possible. And part of that is making Geyser work in a potential contributors IDE of choice. I think that most people looking to contribute that use Eclipse in the current state of the project would likely just give up and move onto something else, as I doubt they'd be inclined to troubleshoot the obscure behavior of one of the build plugins. While I understand that one response to this may be "just use IntelliJ", I really don't see the argument when we can easily make it compatible with 0 impact on users of other IDEs and Geyser's build and publishing process.

@rtm516 rtm516 added PR: Bugfix When a PR contains a bugfix PR: Optimization When a PR doesn't necessarily add anything new or fix anything, but improves upon the code labels Feb 27, 2023
@Kas-tle
Copy link
Member Author

Kas-tle commented Mar 1, 2023

Related: KyoriPowered/indra#116

@Kas-tle
Copy link
Member Author

Kas-tle commented May 16, 2023

This will be fixed by bumping Indra in #3505.

@Kas-tle Kas-tle closed this May 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: Bugfix When a PR contains a bugfix PR: Optimization When a PR doesn't necessarily add anything new or fix anything, but improves upon the code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants