From: alexandre.montplaisir@polymtl.ca (Alexandre Montplaisir)
Subject: [lttng-dev] [UST PATCH] Build a jar for the Java side of the JNI interface
Date: Wed, 11 Apr 2012 22:28:51 -0400 [thread overview]
Message-ID: <4F863DE3.10504@polymtl.ca> (raw)
In-Reply-To: <20120411225027.GA31311@Krystal>
On 12-04-11 06:50 PM, Mathieu Desnoyers wrote:
> With this, is the java application visible from lttng-tools before the
> first JNI call is done ?
No, not yet. This patch only adds the makefile target.
I'm still experimenting with the contents of .java file (namely, adding
support for other tracepoints types). Something like "LTTngUst.init()"
will be needed eventually, since Java classes are lazy-loaded. This
init() can also serve as a check for the liblttng-ust-java.so library,
which will avoid blowing up the application if that library is not found
at runtime.
--
Alexandre Montplaisir
DORSAL lab,
?cole Polytechnique de Montr?al
>
> * Alexandre Montplaisir (alexandre.montplaisir at polymtl.ca) wrote:
>> Signed-off-by: Alexandre Montplaisir <alexandre.montplaisir at polymtl.ca>
>> ---
>> liblttng-ust-java/.gitignore | 1 +
>> liblttng-ust-java/LTTngUst.java | 2 +-
>> liblttng-ust-java/Makefile.am | 8 ++++++--
>> liblttng-ust-java/README | 5 +++++
>> 4 files changed, 13 insertions(+), 3 deletions(-)
>>
>> diff --git a/liblttng-ust-java/.gitignore b/liblttng-ust-java/.gitignore
>> index 677373e..e07ee50 100644
>> --- a/liblttng-ust-java/.gitignore
>> +++ b/liblttng-ust-java/.gitignore
>> @@ -1,2 +1,3 @@
>> org_lttng_ust_LTTngUst.h
>> org/
>> +liblttng-ust-java.jar
>> diff --git a/liblttng-ust-java/LTTngUst.java b/liblttng-ust-java/LTTngUst.java
>> index d3f1eda..68ed120 100644
>> --- a/liblttng-ust-java/LTTngUst.java
>> +++ b/liblttng-ust-java/LTTngUst.java
>> @@ -18,7 +18,7 @@
>>
>> package org.lttng.ust;
>>
>> -class LTTngUst {
>> +public class LTTngUst {
>> public static native void tracepointString(String name, String arg);
>> static {
>> System.loadLibrary("lttng-ust-java");
>> diff --git a/liblttng-ust-java/Makefile.am b/liblttng-ust-java/Makefile.am
>> index 9e01e04..7e1834a 100644
>> --- a/liblttng-ust-java/Makefile.am
>> +++ b/liblttng-ust-java/Makefile.am
>> @@ -7,10 +7,11 @@ liblttng_ust_java_la_SOURCES = LTTngUst.c org_lttng_ust_LTTngUst.h lttng_ust_jav
>> dist_noinst_DATA = LTTngUst.java
>> liblttng_ust_java_la_LIBADD = -lc -L$(top_builddir)/liblttng-ust/.libs -llttng-ust
>>
>> -all: LTTngUst.class org_lttng_ust_LTTngUst.h
>> +all: LTTngUst.class org_lttng_ust_LTTngUst.h liblttng-ust-java.jar
>>
>> clean-local:
>> - rm org_lttng_ust_LTTngUst.h
>> + rm org_lttng_ust_LTTngUst.h
>> + rm liblttng-ust-java.jar
>> rm -rf org/
>>
>> LTTngUst.class: LTTngUst.java
>> @@ -19,4 +20,7 @@ LTTngUst.class: LTTngUst.java
>> org_lttng_ust_LTTngUst.h: LTTngUst.class
>> javah org.lttng.ust.LTTngUst
>>
>> +liblttng-ust-java.jar: LTTngUst.class
>> + jar cf liblttng-ust-java.jar org/*
>> +
>> endif
>> diff --git a/liblttng-ust-java/README b/liblttng-ust-java/README
>> index 37834e6..4b4d2c6 100644
>> --- a/liblttng-ust-java/README
>> +++ b/liblttng-ust-java/README
>> @@ -10,3 +10,8 @@ dependency: openjdk-6-jdk
>>
>> dependency: gcj-4.4-jdk
>> ./configure --with-java-jdk=/usr/lib/jvm/java-gcj --with-jni-interface
>> +
>> +
>> +After building, you can use the liblttng-ust-java.jar file in a Java project.
>> +It requires the liblttng-ust-java.so* files (which get installed when doing
>> +`make install') so make sure those are in the linker's library path.
>> --
>> 1.7.9.1
>>
>>
>> _______________________________________________
>> lttng-dev mailing list
>> lttng-dev at lists.lttng.org
>> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
next prev parent reply other threads:[~2012-04-12 2:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-11 19:24 Alexandre Montplaisir
2012-04-11 22:50 ` Mathieu Desnoyers
2012-04-12 2:28 ` Alexandre Montplaisir [this message]
2012-04-12 13:36 ` Mathieu Desnoyers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F863DE3.10504@polymtl.ca \
--to=alexandre.montplaisir@polymtl.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox