-
Notifications
You must be signed in to change notification settings - Fork 115
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
[Architecture board] Clarify location of spec artifacts #46
Comments
MP OpenAPI team came to a consensus that supporting artifacts in root/META-INF is the best option. Here is the only valid argument I found for this: @arthurdm here On the other hand, many people from outside of MP OpenAPI, including MP committers, think that the best option is to expect files in META-INF folder on the classpath. Here are some arguments for this: @OndrejM here, @arjantijms here, @Emily-Jiang here and @rmannibucau here |
I'd like to add a bit of clarity to this issue, as I found the original description unclear. I believe that this issue is referring to multiple different files located in the application artifact. These files are:
The section of the MP+OpenAPI specification can be found here: This section indicates that file (2) above must be located here:
It does not allow file (2) to be located in Additionally, the same section in the spec includes this text:
So to summarize, the spec says this about the two files in question:
So I think the decision that we need to reach is whether this is OK or whether these artifacts must be on the classpath (which would prohibit them from being located in I hope that adds some clarity to this issue. :) |
In the Architecture meeting this week it was agreed that any non Java properties and files should be accessible on the classpath irrespective of the archive type. https://wiki.eclipse.org/MicroProfile/ArchGuidelines has been updated with the new guidelines. We did, however, agree that the OpenAPI spec could continue to retain the old |
Some MP specs support non-Java artifacts like properties files inside an application. However, there are differences in how they define where the artifacts are expected.
For example, MP Config specifies locations for artifacts in META-INF folder on the classpath (there may be more folder like that on the classpath and all are considered)
Another example, MP OpenAPI allows artifacts to be in the application archive (JAR, WAR, etc.) in root/META-INF, which for WARs isn't on the classpath. After discussion in eclipse/microprofile-open-api#221, MP Config artifacts are also supported in root/META-INF if used with MP OpenAPI, see eclipse/microprofile-open-api#226. On the other hand, MP OpenAPI artifacts in META-INF on classpath aren't supported.
The text was updated successfully, but these errors were encountered: