-
Notifications
You must be signed in to change notification settings - Fork 20
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
[Help]: Gradle plugin does not download platform-specific artifacts from maven repository #33
Comments
I don't see any platform artifacts. |
At the link posted above (https://repo1.maven.org/maven2/dev/atsushieno/libremidi-javacpp/0.1.4/) I see these platform-specific artifacts (among other artifacts):
Are those somehow not visible to you? Or do they somehow not "count"? I sincerely apologize if my naiveté bothers you; your patience would be much appreciated as I learn a new tool. |
When I talk about platform artifacts, I mean artifacts with the string "platform" in their names. I don't see any files with "platform" in their names. |
Let me help you understand how Maven Central locates Maven artifacts so that you can easily guess where you can find "platform" artifacts. It would help you understand how your own Maven artifacts for When you see some Maven artifacts URL such as ^ (https://repo1.maven.org/maven2/dev/atsushieno/libremidi-javacpp/0.1.4/), it means that the artifact is published at https://repo1.maven.org/maven2/ (for other artifacts, there can be other repository URLs). When gradle-javacpp publishes its target artifacts (one for the primary module and another for From the URL above, you can see some path parts If you think "there should be ![]() Click ".." part, and then you are navigated to the parent directory: ![]() Now you'll see all packages I have published in the past. Scroll down to ![]() You can find there is https://repo1.maven.org/maven2/dev/atsushieno/libremidi-javacpp-platform/0.1.4/ The same locating principles apply to javacpp-presets e.g.
I hope this helps! |
Thanks @atsushieno ! So the platform artifacts are there, but they don't contain any dependencies on the platform-specific artifacts (the linux, mac, windows, etc ones): |
It is actually what I did not understand when I published my version 0.1.4 that removed them all, and I brought back (or "tried to", I'd say) at 0.1.5: atsushieno/libremidi-javacpp@f50ebff It is based on what If it does not generate the dependencies (like how |
I'm trying to use the gradle javacpp platform plugin to incorporate platform-specific artifacts into a project, and it seems that the plugin is not downloading the platform-specific artifacts at all to be incorporated into the build.
See also atsushieno/ktmidi#98
To focus in on the problem (as highlighted in the issue linked above), platform-specific artifacts are published on maven (visible here) but they are not pulled into the build as expected.
I've made a simple example project to illustrate the issue:
https://github.com/rkechols/ktmidi-demo
Reproducing the issue should be as simple as cloning that repository, and running
./gradlew run
, which gives output like this:My primary platform for testing is Windows 11 x86_64, but I also have Linux and macOS systems available to test on that experience the same issue.
I'm not sure whether this is actually a problem with gradle-javacpp, a problem with the artifacts/libraries from
dev.atsushieno
I'm trying to use, or a problem with my project setup, but I'd much appreciate help narrowing down the problem from someone well-versed with gradle-javacpp.The text was updated successfully, but these errors were encountered: