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

Provide additional capability that includes the jvmName #12

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

laeubi
Copy link

@laeubi laeubi commented May 5, 2024

Currently a JustJ JRE already has a capability that allows to identify that it is a JustJ JRE, but not of what type (e.g. stripped).

This adds another capability that contains the jvmName

Currently a JustJ JRE already has a capability that allows to identify *that* it is a JustJ JRE, but not of what *type* (e.g. stripped).

This adds another capability that contains the jvmName
@merks
Copy link
Contributor

merks commented May 5, 2024

FYI, here is an example of the model input:

https://download.eclipse.org/justj/jres/11/updates/release/11.0.23/justj.jregen

As such, JVM names are like this:

image

image

The MANIFEST also uses the JVM name in the BSN:

image

So the only difference it that BSN is qualified with the model name, i.e., with this:

image

All models provided by JustJ will have that name, even if we support graal or j9 in the future.

All this is to say, that I don't think it's useful to provide a capability with a truncated name because that provides effectively no additional value over using the BSN.

@laeubi
Copy link
Author

laeubi commented May 5, 2024

Why I not want the "full" name is that it allows to be less specific, so instead of require one special JustJ (that might change in the future) I want to target a "variant".

Why I want a capability is because (similar to for example an Execution Environment) I don't want to target a specific provider but a provided "feature" (in this case a JRE).

@merks
Copy link
Contributor

merks commented May 5, 2024

I just don’t see that requiring openjdk.hotspot.base instead of org.eclipse.justj.openjdk.hotspot.base is less specific but simply less verbose. After all, who else will ever provide that?

If we provided a capability with namespace org.eclipse.justj.type’ with name debugorstripped` then one could specify some aspect about the jre you want without being specific. See what I mean?

In other words, I would expect some capabilities that describe some aspect of the jre-providing bundle rather than providing some variant of the bsn.

@laeubi
Copy link
Author

laeubi commented May 5, 2024

I just got the feeling that the name would be jre.base.strippedinstead of openjdk.hotspot.jre.base.stripped but that might be wrong... of course shorter is better I think :-)

Having a new capability seems fine as well but would require more adjustments, going that path one might even want a org.eclipse.justj.distribution (or vendor) (=temurin in this case?) so I see the advantage in that approach so if that's possible why not, I'm currently not able to guess how much effort it would be nor how to archive that...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants