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

License of JavaFX modules cannot be determined - probably the same with Kotlin Multiplatform libraries - a.k.a. variant- / attribute-awareness #313

Open
Vampire opened this issue Jun 3, 2024 · 2 comments · May be fixed by #314

Comments

@Vampire
Copy link
Contributor

Vampire commented Jun 3, 2024

The JavaFX libraries contain platform-specific native libraries.

With the JavaFX Gradle plugin 0.1.0+ applied, or also natively after openjdk/jfx#1232 is finished, the JavaFX modules have various OS and architecture dependent feature variants.

With the tactic this plugin uses, this results in the JavaFX modules not being able to be resolved as the necessary attributes are not set to pick one of the variants and thus the resolution fails and due to that no license is recognized, though it would have been available in the (parent) POM.

I did not try, but I guess with KMP project this will be quite the same situation.

I guess for a proper fix of this problem there needs to be some rewrite done. The gradle-versions-plugin for example copies the configurations it wants to check and copies over all the set attributes on that configuration, so that the dependencies are resolved like the build under investigation (or the applied plugins) configured them to do. That plugin needs to copy those configurations, as it changes the version constraints so that the latest version is resolved, so this is most probably not necessary here. I didn't look too closely why you use a detached configuration to resolve the dependency, but maybe there is some other way to do what you need, like just resolving the configuration in question, or using an artifact view, or similar.

@Vampire
Copy link
Contributor Author

Vampire commented Jun 4, 2024

Having a closer look, you only use that to retrieve POMs.
I think for that you could simply use an artifact resolution query instead.

Vampire added a commit to Vampire/Gradle-License-Report that referenced this issue Jun 4, 2024
Vampire added a commit to Vampire/Gradle-License-Report that referenced this issue Jun 4, 2024
@haleyc15243
Copy link

This would be a great improvement for multiplatform projects!

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 a pull request may close this issue.

2 participants