1{ fetchurl, lib, stdenv, ant, jdk, jre, python, makeWrapper }:
2
3stdenv.mkDerivation {
4 name = "rabbitmq-java-client-3.3.4";
5
6 src = fetchurl {
7 url = "https://www.rabbitmq.com/releases/rabbitmq-java-client/v3.3.4/rabbitmq-java-client-3.3.4.tar.gz";
8 sha256 = "03kspkgzzjsbq6f8yl2zj5m30qwgxv3l58hrbf6gcgxb5rpfk6sh";
9 };
10
11 nativeBuildInputs = [ makeWrapper ];
12 buildInputs = [ ant jdk python ];
13
14 buildPhase = "ant dist";
15
16 installPhase = ''
17 mkdir -p $out/bin $out/share/java
18 cp build/lib/*.jar lib/*.jar $out/share/java
19
20 # There is a script in the source archive, but ours is cleaner
21 makeWrapper ${jre}/bin/java $out/bin/PerfTest \
22 --add-flags "-Djava.awt.headless=true -cp $out/share/java/\* com.rabbitmq.examples.PerfTest"
23 '';
24
25 meta = with lib; {
26 description = "RabbitMQ Java client library which allows Java code to interface to AMQP servers";
27 homepage = "https://www.rabbitmq.com/java-client.html";
28 license = with licenses; [ mpl11 gpl2 ];
29 platforms = platforms.linux;
30 };
31}