-
Notifications
You must be signed in to change notification settings - Fork 9
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
Add support for importing OSGi modules #87
Comments
Not only that, but I'd like an API which, given a
A stub of this API is available as You think you can do that @alesj? |
That's clean up my ceylon/ceylon.language#370 a lot. |
@FroMage so you want to inspect the contents of the .zip for those descriptors? btw: do we already have some .zip --> JBoss Modules module mechanism? |
Yes, inside, because this will be used to load module descriptors from the classpath, where every jar is in the same folder. In that case we can't have external descriptors because they would all have the same name, and it just doesn't happen in practice. As for the JBoss Modules descriptor in jars, I add them during the build to our distrib repo jars under |
@FroMage why the long path? |
Will you know when you're gonna read from flat classpath vs.per-module directory? |
The long path is to make it possible to have modules in a directory tree. Classpath is jar or folder, and if you have more than one module in the folder then we need to make the module descriptor path unique. |
Well, if we're in a repo structure we have either external descriptors (for jboss modules) or internal if missing (or if ceylon, maven, osgi). And the new API I ask for would be for jars specifically, it takes a |
@FroMage I added this: https://github.com/alesj/ceylon-module-resolver/tree/desc1 |
It does look like what I had in mind. |
@FroMage I've added simple Maven and OSGi resolvers: Feel free to test and merge and etc ... |
OK thanks. |
Why the hell is this in your repo and not the Ceylon organisation's? :( |
What's the problem if this is there? Merge it. ;)
|
So, I've tested it and it seems that rather than just reading the |
I couldn't find how to make aether do that. |
Yes, OK I'll merge it as-is for now. |
Ok thanks! |
Sorry, I can't commit yet, the tests don't pass, there's something failing wrt maven resolution. Hopefully Monday. |
Ah, I see. |
…eylon/ceylon-runtime#57 and support osgi resolver
…hing else Otherwise Aether will complain that it can't find Ceylon modules :(
I have merged this, though there's an issue remaining with Maven resolving. |
So leaving open until we fix it. |
I miss use case here: you are trying to just parse the top level pom? Because Aether needs to resolve pom.xml file(s) of transitive deps in order to build effective POM. In case you want just to parse pom.xml, Resolver does not support it. I'm not sure whether that could effectively be done via Aether. I can check if that would be possible to skip artifact downloads and download just metadata. If that would help you, please file a FR in https://issues.jboss.org/browse/SHRINKRES. |
I think we only want to parse the pom, definitly not download or validate the presence/absence of any module in any repo. |
Yes, we just need to grab the info out of the pom.xml. |
Agreed, ideally the resolver would never cause any network requests as we're only interested in what kind of dependencies are directly specified in the POM itself. |
How far you need to go with direct dependencies? Would pom.xml files have any parent? Would they have dependencyManagement section? Versions managed via properties? |
Ah, good questions. Those are poms we find in jars. Are they already resolved/substituted or just lame copies of the build pom? |
Moving to 1.2, unfortunately. |
Now that ceylon/ceylon-compiler#1456 has added support for generating OSGi meta-data of the module dependencies, we need some way to declare dependencies on non-Ceylon OSGi modules.
There are couple of different use cases:
java.*
packages makes sense.The text was updated successfully, but these errors were encountered: