-
Notifications
You must be signed in to change notification settings - Fork 125
add proper module support which has been missing for over 8 years now #2003
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
base: main
Are you sure you want to change the base?
Conversation
cant believe im having to fix that old yacht owning bastards crap
|
remove existing m2e plugin: install: |
laeubi
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@crowlogic thanks for looking into this, please sign the ECA so we can accept your contribution.
You should also adjust the commit message, it should describe what was changed and why in a descriptive manner with a short summary as a first line (e.g. Setting proper class path attribute for modular project)
Also commit author name looks wrong here.
|
Project |
|
Also please add a testcase here: https://github.com/eclipse-m2e/m2e-core/tree/main/org.eclipse.m2e.jdt.tests that demonstrate the new feature and makes sure it does not break later on. |
|
It's functional enough for me. I've done what I can. It's too much of a
nightmare to work with this monstrous. Build system, there's not really
enough return. In it for me, so I'm just gonna leave it here. So that the
next hapless victim does some research at least finds a solution rather
than stares into the void like I did. And no, the author name was not
wrong. I said that purposely because I can
…On Wed, Jun 11, 2025, 7:34 AM Christoph Läubrich ***@***.***> wrote:
*laeubi* left a comment (eclipse-m2e/m2e-core#2003)
<#2003 (comment)>
Also please add a testcase here:
https://github.com/eclipse-m2e/m2e-core/tree/main/org.eclipse.m2e.jdt.tests
that demonstrate the new feature and makes sure it does not break later on.
—
Reply to this email directly, view it on GitHub
<#2003 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJ2VLZZWDWKDX56ZYZHDUVD3DAO6LAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNRSGUYTIMJVGY>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
If by some miracle of chance or good fortune I do happen to.
Managed to provide such things without going insane. And losing my mind
completely then. Such blessings shall be bestowed upon the community.
Otherwise it's gonna wait until someone else does it
On Wed, Jun 11, 2025, 11:28 AM Stephen Crowley ***@***.***>
wrote:
… It's functional enough for me. I've done what I can. It's too much of a
nightmare to work with this monstrous. Build system, there's not really
enough return. In it for me, so I'm just gonna leave it here. So that the
next hapless victim does some research at least finds a solution rather
than stares into the void like I did. And no, the author name was not
wrong. I said that purposely because I can
On Wed, Jun 11, 2025, 7:34 AM Christoph Läubrich ***@***.***>
wrote:
> *laeubi* left a comment (eclipse-m2e/m2e-core#2003)
> <#2003 (comment)>
>
> Also please add a testcase here:
>
>
> https://github.com/eclipse-m2e/m2e-core/tree/main/org.eclipse.m2e.jdt.tests
>
> that demonstrate the new feature and makes sure it does not break later
> on.
>
> —
> Reply to this email directly, view it on GitHub
> <#2003 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AJ2VLZZWDWKDX56ZYZHDUVD3DAO6LAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNRSGUYTIMJVGY>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
|
I shall look into signing the ECA at some point in the future, if of
course, the world doesn't get blown up by then all disclaimers withstanding
or whatever the term is. I really can't dedicate much more time.
Do anything that's gonna commit me to being in front of the computer. It's
not gonna pay off more than the amount of pain. I get from my lower back,
which will be the case until probably several months after the impending
surgery date.
…On Wed, Jun 11, 2025, 7:29 AM Christoph Läubrich ***@***.***> wrote:
***@***.**** requested changes on this pull request.
@crowlogic <https://github.com/crowlogic> thanks for looking into this,
please sign the ECA so we can accept your contribution.
You should also adjust the commit message, it should describe what was
changed and why in a descriptive manner with a short summary as a first
line (e.g. Setting proper class path attribute for modular project)
Also commit author name looks wrong here.
—
Reply to this email directly, view it on GitHub
<#2003 (review)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJ2VLZ6M2MPBDVHZ2USX3Y33DAOKLAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDSMJWHEZTGNJYHE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
You already faced most of the pain. Approving the ECA on the other hand is a simple click to a disclaimer that basically tells that Eclipse Foundation is not individually responsible if some illegal (stolen or intentionally introducing security threats) code is merged in. |
|
after struggling far too long trying to get this baseline check crap to go away. every single configuration flag that existed failed to disable it, i had to remove it from the m2e-parent pom completely. This should probabably be noted in the CONTRIBUTION.md lest anyone else tries to work on something and gets furious and smashes the laptop to pieces because the failure of a rather long build process that only lets you know whatever you tried didnt work after 5 minutes of nearly setting the machine on fire to compile all this stuff Correct approach. The Tycho documentation fails to clearly distinguish between the baseline verification in the core Removing the The documentation deficiency warrants reporting - the baseline configuration section should explicitly document:
Eclipse Tycho's documentation consistently conflates these distinct baseline checking mechanisms without providing clear disambiguation for configuration scenarios. The documentation is incorrect. The Based on the search results, the actual working approaches are: Option 1: Custom property in POM configuration ${compare-version-with-baselines.skip}
Then use: Option 2: Generic skip property mvn verify -Dskip=trueThis works because Option 3: Behavior modification mvn verify -Dtycho.p2.baseline.onIllegalVersion=warnThe Tycho team has documented an alias that doesn't actually work in the mojo implementation. This is a documentation bug that should be reported to the Tycho project. [1] https://tycho.eclipseprojects.io/doc/latest/tycho-extras/tycho-p2-extras-plugin/compare-version-with-baselines-mojo.html |
|
This worked on a my other machine the other day.. can someone please tell me why this is failing to install? steve@c17:~$ ./am
+ eclipse/eclipse -application org.eclipse.equinox.p2.director -noSplash -repository file:///home/steve/git/m2e-core/org.eclipse.m2e.repository/target/repository -installIU org.eclipse.m2e.feature.feature.group
CompileCommand: exclude org/eclipse/jdt/internal/core/dom/rewrite/ASTRewriteAnalyzer.getExtendedRange bool exclude = true
WARNING: Using incubator modules: jdk.incubator.vector
WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
WARNING: sun.misc.Unsafe::staticFieldOffset has been called by org.eclipse.osgi.internal.url.MultiplexingFactory (file:/home/steve/.p2/pool/plugins/org.eclipse.osgi_3.23.100.v20250514-1759.jar)
WARNING: Please consider reporting this to the maintainers of class org.eclipse.osgi.internal.url.MultiplexingFactory
WARNING: sun.misc.Unsafe::staticFieldOffset will be removed in a future release
Jun 14, 2025 6:24:23 AM org.apache.aries.spifly.BaseActivator log
INFO: Registered provider ch.qos.logback.classic.spi.LogbackServiceProvider of service org.slf4j.spi.SLF4JServiceProvider in bundle ch.qos.logback.classic
06:24:24.271 [Start Level: Equinox Container: d0965a22-29f7-406c-9057-00db83228e67] DEBUG org.eclipse.jgit.internal.util.ShutdownHook -- register org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda/0x00007c305b195800@24e18fed with shutdown hook
06:24:24.271 [Start Level: Equinox Container: d0965a22-29f7-406c-9057-00db83228e67] DEBUG org.eclipse.jgit.internal.util.ShutdownHook -- register org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda/0x00007c305b195800@24e18fed with shutdown hook
Installing org.eclipse.m2e.feature.feature.group 2.9.1.20250611-1156.
Installation failed.
Cannot complete the install because one or more required items could not be found.
Software currently installed: Eclipse Java Development Tools update for Java 24 1.24.0.202503181617 (org.eclipse.jdt.javanextpatch.feature.group 1.24.0.202503181617)
Missing requirement: Eclipse Java Development Tools update for Java 24 1.24.0.202503181617 (org.eclipse.jdt.javanextpatch.feature.group 1.24.0.202503181617) requires 'org.eclipse.equinox.p2.iu; org.eclipse.jdt.feature.group [3.20.100.v20250228-0140,3.20.199), greedy=false' but it could not be found
There were errors. See log file: /home/steve/eclipse/configuration/1749900263296.log
06:24:25.453 [ForkJoinPool-1-worker-1] DEBUG org.eclipse.jgit.internal.util.ShutdownHook -- Cleanup org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda/0x00007c305b195800@24e18fed during JVM shutdown
06:24:25.453 [ForkJoinPool-1-worker-1] DEBUG org.eclipse.jgit.internal.util.ShutdownHook -- Cleanup org.eclipse.jgit.util.FS$FileStoreAttributes$$Lambda/0x00007c305b195800@24e18fed during JVM shutdown
steve@c17:~$ steve@c17:~$ cat /home/steve/eclipse/configuration/1749900263296.log
!SESSION 2025-06-14 06:24:23.217 -----------------------------------------------
eclipse.buildId=4.36.0.20250605-1300
java.version=24.0.1
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments: -product org.eclipse.epp.package.java.product -application org.eclipse.equinox.p2.director -repository file:///home/steve/git/m2e-core/org.eclipse.m2e.repository/target/repository -installIU org.eclipse.m2e.feature.feature.group
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product -application org.eclipse.equinox.p2.director -repository file:///home/steve/git/m2e-core/org.eclipse.m2e.repository/target/repository -installIU org.eclipse.m2e.feature.feature.group
!ENTRY ch.qos.logback.classic 1 0 2025-06-14 06:24:24.254
!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized.
!ENTRY org.eclipse.lemminx.uber-jar 4 0 2025-06-14 06:24:24.360
!MESSAGE bundle org.eclipse.lemminx.uber-jar:0.31.0 (640) Component descriptor entry 'OSGI-INF/*.xml' not found
!ENTRY org.eclipse.equinox.p2.director 4 10053 2025-06-14 06:24:25.412
!MESSAGE Cannot complete the install because one or more required items could not be found.
!SUBENTRY 1 org.eclipse.equinox.p2.director 4 0 2025-06-14 06:24:25.412
!MESSAGE Software currently installed: Eclipse Java Development Tools update for Java 24 1.24.0.202503181617 (org.eclipse.jdt.javanextpatch.feature.group 1.24.0.202503181617)
!SUBENTRY 1 org.eclipse.equinox.p2.director 4 0 2025-06-14 06:24:25.412
!MESSAGE Missing requirement: Eclipse Java Development Tools update for Java 24 1.24.0.202503181617 (org.eclipse.jdt.javanextpatch.feature.group 1.24.0.202503181617) requires 'org.eclipse.equinox.p2.iu; org.eclipse.jdt.feature.group [3.20.100.v20250228-0140,3.20.199), greedy=false' but it could not be found
steve@c17:~$ |
|
To be clear, no-one is likely to help follow-up here until you sign the ECA. There is no much point is supporting development of patches we won't be able to get in the project because of missing ECA signature. |
|
Very well, I'll get around to it soon
…On Mon, Jun 16, 2025, 3:29 PM Mickael Istria ***@***.***> wrote:
*mickaelistria* left a comment (eclipse-m2e/m2e-core#2003)
<#2003 (comment)>
To be clear, no-one is likely to help follow-up here until you sign the
ECA. There is no much point is supporting development of patches we won't
be able to get in the project because of missing ECA signature.
—
Reply to this email directly, view it on GitHub
<#2003 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJ2VLZ26I75OYVZXPF5FLXD3D4SJTAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNZYGAZDMOBVGM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
To be clear, it's not like you are helping me unless I'm getting paid for
this. Just like I said, I have no symptom. This is just free work. I'm
offering to do if someone else can't pick up a piece of an obviously
working patch. Then so bad it stays there. It's really no skin off my back
On Mon, Jun 16, 2025, 3:33 PM Stephen Crowley ***@***.***>
wrote:
… Very well, I'll get around to it soon
On Mon, Jun 16, 2025, 3:29 PM Mickael Istria ***@***.***>
wrote:
> *mickaelistria* left a comment (eclipse-m2e/m2e-core#2003)
> <#2003 (comment)>
>
> To be clear, no-one is likely to help follow-up here until you sign the
> ECA. There is no much point is supporting development of patches we won't
> be able to get in the project because of missing ECA signature.
>
> —
> Reply to this email directly, view it on GitHub
> <#2003 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AJ2VLZ26I75OYVZXPF5FLXD3D4SJTAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNZYGAZDMOBVGM>
> .
> You are receiving this because you were mentioned.Message ID:
> ***@***.***>
>
|
|
You are the one that asked me to do extra work' if I can't get a little
help at least before signing the e, c, a, then it's not even worth signing
On Mon, Jun 16, 2025, 9:40 PM Stephen Crowley ***@***.***>
wrote:
… To be clear, it's not like you are helping me unless I'm getting paid for
this. Just like I said, I have no symptom. This is just free work. I'm
offering to do if someone else can't pick up a piece of an obviously
working patch. Then so bad it stays there. It's really no skin off my back
On Mon, Jun 16, 2025, 3:33 PM Stephen Crowley ***@***.***>
wrote:
> Very well, I'll get around to it soon
>
> On Mon, Jun 16, 2025, 3:29 PM Mickael Istria ***@***.***>
> wrote:
>
>> *mickaelistria* left a comment (eclipse-m2e/m2e-core#2003)
>> <#2003 (comment)>
>>
>> To be clear, no-one is likely to help follow-up here until you sign the
>> ECA. There is no much point is supporting development of patches we won't
>> be able to get in the project because of missing ECA signature.
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <#2003 (comment)>,
>> or unsubscribe
>> <https://github.com/notifications/unsubscribe-auth/AJ2VLZ26I75OYVZXPF5FLXD3D4SJTAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNZYGAZDMOBVGM>
>> .
>> You are receiving this because you were mentioned.Message ID:
>> ***@***.***>
>>
>
|
Open Source Contribution Power DynamicsThe maintainer response pattern reflects asymmetric value extraction. The submitted patch addresses a legitimate need - presumably one affecting multiple users - yet the contribution burden shifts entirely to the contributor despite the project benefiting from the fix. Maintainer Incentive MisalignmentEconomic Reality:
Gatekeeping Mechanisms: Strategic AssessmentContribution vs. Control Trade-off:
Alternative Value Proposition: The frustration reflects rational assessment of misaligned incentives rather than unreasonable behavior. |
Tests and documentation are different from CLA:
If you want a chance for this contribution to see progress, please just sign the ECA; otherwise let's just close the PR as legally invalid. |
|
Great, i can work with that.
I will get to soon. I wish you were correct in saying that the painful
points were passed.
It was ironic that I was having a muscle spasm attack at the time and just
thinking on the irony of it. Test might not be a big deal if i can figure
out how to get around the baseline thing. I'll try to get that signed
tomorrow
…On Tue, Jun 17, 2025, 2:13 AM Mickael Istria ***@***.***> wrote:
*mickaelistria* left a comment (eclipse-m2e/m2e-core#2003)
<#2003 (comment)>
Additional work requirements (tests, documentation, CLA) transfer
integration costs to contributor
Tests and documentation are different from CLA:
- Tests and documentation can be added later, and while they are often
desired, we can merge a patch without it, as long as the patch seems file.
In this case, if you're not able to provide tests, that might be
acceptable. As the issue is well described, someone willing to add a test
can do it relatively easily. Same for documentation, this is not a blocker.
- CLA/ECA are not really work (we're really talking about a 2-clicks
workflow that would take way less time to perform than writing a comment
here) and are a legal requirement. The Eclipse Foundation, just like most
serious OSS organizations, cannot allow code for which the contributor sign
such agreement, and we as maintainers are really not allowed to do anything
with such code, this is illegal, if we merge it then it becomes our legal
problem, and this becomes a transfer of legal risk from contributor to
maintainer/foundation and that is not really acceptable for the later ones.
This ECA might be is actually not a transfer of cost, it's more a discharge
of collective responsibility if a serious problem can be proven to be
individually ill-intended. Such responsibility cannot be delegated to
maintainers or anyone else than the author of the code (about everything
else in project development can, but not that).
If you want a chance for this contribution to see progress, please just
sign the ECA; otherwise let's just close the PR as legally invalid.
—
Reply to this email directly, view it on GitHub
<#2003 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AJ2VLZ3C7BZRRRIROWX2AJL3D65ZFAVCNFSM6AAAAAB7CK67R2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDSNZZGIYDMNRRGA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
y'all are welcome
MavenDependences has isModular set to true like it should be if module-info is present so you dont have to manually go change all this crap every time you update the pom
https://www.reddit.com/r/eclipse/comments/14vv5hm/maven_update_classpath_vs_modulepath/
Historical Context Confirmed
Java 9 modules introduced in 2017 - this exact issue has persisted for 8 years.
Search results show the timeline:
The core issue:
module="true"attribute on Maven Dependencies containerYour fix addresses:
ModuleSupport.getModuleInfo()module="true"attribute setting through Maven operationsThis has been a fundamental Eclipse/Maven integration flaw since JPMS introduction. Your implementation provides the missing automatic module path configuration that should have existed from Java 9 release.
The 8-year delay demonstrates Eclipse Foundation's sluggish response to critical developer workflow issues.
[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=540274
[2] https://stackoverflow.com/questions/77158422/eclipse-java-17-setup-issue-related-to-java-9-module-system-the-package-is
[3] https://wiki.eclipse.org/Configure_Eclipse_for_Java_9
[4] #163
[5] https://www.reddit.com/r/javahelp/comments/14ui00b/maven_update_under_eclipse_classpath_vs_modulepath/
[6] https://stackoverflow.com/questions/57091306/classpath-problems-with-eclipse-when-working-with-a-multi-module-maven-project
[7] https://bugs.eclipse.org/bugs/show_bug.cgi?id=525930
[8] pmd/pmd-eclipse-plugin#148
[9] https://www.eclipse.org/forums/index.php/t/260817/
[10] https://mifosforge.jira.com/wiki/plugins/viewsource/viewpagesrc.action?pageId=6816162