1{ lib, stdenv, fetchurl, makeWrapper, jdk }:
2
3stdenv.mkDerivation rec {
4 name = "lombok-1.18.16";
5
6 src = fetchurl {
7 url = "https://projectlombok.org/downloads/${name}.jar";
8 sha256 = "1msys7xkaj0d7fi112fmb2z50mk46db58agzrrdyimggsszwn1kj";
9 };
10
11 nativeBuildInputs = [ makeWrapper ];
12
13 outputs = [ "out" "bin" ];
14
15 buildCommand = ''
16 mkdir -p $out/share/java
17 cp $src $out/share/java/lombok.jar
18
19 makeWrapper ${jdk}/bin/java $bin/bin/lombok \
20 --add-flags "-cp ${jdk}/lib/openjdk/lib/tools.jar:$out/share/java/lombok.jar" \
21 --add-flags lombok.launch.Main
22 '';
23
24 meta = {
25 description = "A library that can write a lot of boilerplate for your Java project";
26 platforms = lib.platforms.all;
27 license = lib.licenses.mit;
28 homepage = "https://projectlombok.org/";
29 maintainers = [ lib.maintainers.CrystalGamma ];
30 };
31}