7 Aug 2024 |
trexd | tad: I'm trying to get gradle2nix v2 to build a particular artifact. I'm getting a "could not resolve plugin artifact error".
Here's the relevant section of gradle.lock :
"com.gorylenko.gradle-git-properties:com.gorylenko.gradle-git-properties.gradle.plugin:2.4.1": {
"com.gorylenko.gradle-git-properties.gradle.plugin-2.4.1.pom": {
"url": "https://plugins.gradle.org/m2/com/gorylenko/gradle-git-properties/com.gorylenko.gradle-git-properties.gradle.plugin/2.4.1/com.gorylenko.gradle-git-properties.gradle.plugin-2.4.1.pom",
"hash": "sha256-UbS0JAaOgoHJ1TEN9zZUDvoJqmqy73nInzwx3DHTwDg="
}
},
"com.gorylenko.gradle-git-properties:gradle-git-properties:2.4.1": {
"gradle-git-properties-2.4.1.jar": {
"url": "https://plugins.gradle.org/m2/com/gorylenko/gradle-git-properties/gradle-git-properties/2.4.1/gradle-git-properties-2.4.1.jar",
"hash": "sha256-QdGrigLNf7jfjxVz78B7QindwukExaTrXIxDWyXkBMM="
},
"gradle-git-properties-2.4.1.module": {
"url": "https://plugins.gradle.org/m2/com/gorylenko/gradle-git-properties/gradle-git-properties/2.4.1/gradle-git-properties-2.4.1.module",
"hash": "sha256-z4h44JHHIc4pRNdJeenjiXIBk4F4H81ogvFWK6jUfmA="
},
"gradle-git-properties-2.4.1.pom": {
"url": "https://plugins.gradle.org/m2/com/gorylenko/gradle-git-properties/gradle-git-properties/2.4.1/gradle-git-properties-2.4.1.pom",
"hash": "sha256-6Dn25xPK/62nzGUte/dgN546IEFrRSn54KErxmfe86s="
}
},
Here is how I'm using buildGradlePackage
packages.codegen = gradle2nix.builders.${system}.buildGradlePackage {
name = "datahub";
buildJDK = pkgs.jdk17;
lockFile = ../gradle.lock;
src = pkgs.fetchFromGitHub {
owner = "datahub-project";
repo = "datahub";
rev = "v0.13.3";
sha256 = "sha256-YccXGYnmnY+rUJmCDsAaROnxfvPX/iJW3OnPUDx0g2I=";
};
gradleInstallFlags = [":metadata-events:mxe-schemas:build"];
};
Got any ideas? I'm not super familiar with gradle but this plugin's name looks kinda weird.
| 19:04:21 |
trexd | Here's the build log:
Welcome to Gradle 8.8!
Here are the highlights of this release:
- Running Gradle on Java 22
- Configurable Gradle daemon JVM
- Improved IDE performance for large projects
For more details see https://docs.gradle.org/8.8/release-notes.html
To honour the JVM settings for this build a single-use Daemon process will be forked. For more on this, please refer to https://docs.gradle.org/8.8/userguide/gradle_daemon.html#sec:disabling_the_daemon in the Gradle documentation.
Daemon will be stopped at the end of the build
Configuration on demand is an incubating feature.
> Task :buildSrc:compileJava
> Task :buildSrc:compileGroovy NO-SOURCE
> Task :buildSrc:processResources NO-SOURCE
> Task :buildSrc:classes
> Task :buildSrc:jar
FAILURE: Build failed with an exception.
* Where:
Build file '/build/source/build.gradle' line: 77
* What went wrong:
Plugin [id: 'com.gorylenko.gradle-git-properties', version: '2.4.1'] was not found in any of the following sources:
- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Included Builds (No included builds contain this plugin)
- Plugin Repositories (could not resolve plugin artifact 'com.gorylenko.gradle-git-properties:com.gorylenko.gradle-git-properties.gradle.plugin:2.4.1')
Searched in the following repositories:
Gradle Central Plugin Repository
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.8/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 20s
2 actionable tasks: 2 executed
| 19:05:35 |
tad | The "plugin artifact" is a POM-only dependency that's named "$pluginId.gradle.plugin". If the author doesn't publish that, then you need to include the plugin in the Gradle classpath some other way, either in settings.gradle with `pluginManagement` or with the old `buildscript.classpath` block. | 19:08:10 |
trexd | In reply to @taffisher:matrix.org The "plugin artifact" is a POM-only dependency that's named "$pluginId.gradle.plugin". If the author doesn't publish that, then you need to include the plugin in the Gradle classpath some other way, either in settings.gradle with `pluginManagement` or with the old `buildscript.classpath` block. Ok I'll look into it. I saw a stackoverflow issues on this but I wasn't sure if it was that or gradle2nix. Thanks for the quick reply :) | 19:12:57 |
| tad left the room. | 19:12:59 |
| tad joined the room. | 19:14:53 |
tad | oh, it is published, it's just not being resolved | 19:16:11 |
tad | was that log from a Nix build? because that means it's not trying to search the offline repository | 19:18:17 |
trexd | In reply to @taffisher:matrix.org was that log from a Nix build? because that means it's not trying to search the offline repository Yes it's from a nix build. | 19:19:52 |
tad | In reply to @trexd:matrix.org Yes it's from a nix build. Thanks, I'll take a look in a bit. I think the setup hook isn't being applied. If this is in a flake, can you make sure ../gradle.lock is added to the Git index (git add --intent-to-add gradle.lock)? | 19:27:52 |
trexd | In reply to @taffisher:matrix.org Thanks, I'll take a look in a bit. I think the setup hook isn't being applied. If this is in a flake, can you make sure ../gradle.lock is added to the Git index (git add --intent-to-add gradle.lock)? Tried it with git add --intent-to-add gradle.lock same issue. I appreciate you looking into it. Datahub is a very weird beast of a repo. | 19:29:55 |
tad | In reply to @trexd:matrix.org Tried it with git add --intent-to-add gradle.lock same issue. I appreciate you looking into it. Datahub is a very weird beast of a repo. Yep, most recent work I've been doing is adding test fixtures, one of them being a datahub build. Appreciate the patience. | 19:32:49 |
8 Aug 2024 |
| trexd left the room. | 15:24:34 |
| trexd joined the room. | 17:38:20 |
| Alyssa Ross set a profile picture. | 18:48:56 |
20 Aug 2024 |
| benwebb changed their display name from benjaminedwardwebb to benwebb. | 12:44:12 |
22 Aug 2024 |
| Artur Manuel joined the room. | 13:01:27 |
| Artur Manuel changed their profile picture. | 14:53:02 |
23 Aug 2024 |
| benwebb left the room. | 18:56:58 |
30 Aug 2024 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" joined the room. | 08:10:30 |
4 Sep 2024 |
| SomeoneSerge (utc+3) changed their display name from SomeoneSerge (UTC+3) to SomeoneSerge (nix.camp). | 21:48:48 |
6 Sep 2024 |
| Thom Jordan joined the room. | 18:18:49 |
10 Sep 2024 |
| Frédéric Christ 🌴 16.09. - 30.09. changed their display name from Frédéric Christ to Frédéric Christ 🌴 16.09. - 30.09.. | 05:21:16 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" changed their display name from (lambda (u) (format nil "~A lost their email!" u)) "Artur Manuel" to Artur Manuel (on break). | 17:32:10 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" changed their profile picture. | 17:34:33 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" changed their display name from Artur Manuel (on break) to (lambda (u) (format nil "~A is not using Matrix right now." u)) "Artur Manuel". | 17:36:11 |
12 Sep 2024 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" changed their display name from (lambda (u) (format nil "~A is not using Matrix right now." u)) "Artur Manuel" to (lambda (u) (format nil "~a ~a")) "Artur" "Manuel". | 01:48:29 |
| (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel" changed their display name from (lambda (u) (format nil "~a ~a")) "Artur" "Manuel" to (lambda (f l) (format nil "~a ~a")) "Artur" "Manuel". | 01:55:39 |
13 Sep 2024 |
trexd | What is the best case scenario for packaging Java based programs? Gradle requires gradle2nix, maven requires maven2nix. Is there anyway to manage Java projects without fixed output derivations? Python and haskell development are pretty nice with nix since you just have to specify the packages that you want but I suppose that's because both of those languages have package sets. | 14:28:58 |
Infinidoge 🏳️⚧️ | FOD seems to be the best case right now, similar to how the JS ecosystem depends on FOD | 15:06:35 |