Blob Blame Raw
From 76e0ad5d08d88f7535291ea7b4f1807f52cdd494 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Mon, 6 Jan 2014 17:08:21 +0100
Subject: [PATCH 16/39] Use the last frame's class path for executable

Fixes #26
Related to rhbz#1054737
---
 src/abrt-checker.c                              | 84 ++++++++++++++++---------
 test/CMakeLists.txt                             | 17 ++++-
 test/MultiThreadTest.java                       | 22 +++----
 test/RemoteTest.java                            | 33 +++++++---
 test/ThreadCaughtException.java                 |  9 +++
 test/ThreadUncaughtException.java               |  9 +++
 test/outputs/Linux-armv7l/run_test.log.in       | 17 +++++
 test/outputs/Linux-ppc/run_test.log.in          | 16 +++++
 test/outputs/Linux-ppc64/run_test.log.in        | 16 +++++
 test/outputs/Linux-s390/run_test.log.in         | 16 +++++
 test/outputs/Linux-s390x/run_test.log.in        | 16 +++++
 test/outputs/run.log.in                         |  2 +
 test/outputs/run_bad_class.log.in               |  1 +
 test/outputs/run_cut_exception_namespace.log.in |  1 +
 test/outputs/run_cut_method_class.log.in        |  1 +
 test/outputs/run_cut_method_namespace.log.in    |  1 +
 test/outputs/run_cut_reason_message.log.in      |  1 +
 test/outputs/run_inner.log.in                   |  2 +
 test/outputs/run_jar.log.in                     |  2 +
 test/outputs/run_missing_class_test.log.in      |  1 +
 test/outputs/run_package.log.in                 |  2 +
 test/outputs/run_remote.log.in                  |  6 +-
 test/outputs/run_remote_thread.log.in           | 13 ++++
 test/outputs/run_threads.log.in                 |  6 +-
 test/outputs/run_try_finally.log.in             |  2 +
 25 files changed, 241 insertions(+), 55 deletions(-)
 create mode 100644 test/ThreadCaughtException.java
 create mode 100644 test/ThreadUncaughtException.java
 create mode 100644 test/outputs/run_remote_thread.log.in

diff --git a/src/abrt-checker.c b/src/abrt-checker.c
index 23101bd..c62d1ef 100644
--- a/src/abrt-checker.c
+++ b/src/abrt-checker.c
@@ -520,6 +520,7 @@ static void register_abrt_event(
  * Report a stack trace to all systems
  */
 static void report_stacktrace(
+        const char *executable,
         const char *message,
         const char *stacktrace,
         int sure_unique)
@@ -546,11 +547,15 @@ static void report_stacktrace(
     {
         log_print("%s", stacktrace);
     }
+    if (executable)
+    {
+        log_print("executable: %s\n", executable);
+    }
 
     if (NULL != stacktrace && sure_unique)
     {
         VERBOSE_PRINT("Reporting stack trace to ABRT");
-        register_abrt_event(processProperties.main_class, message, stacktrace);
+        register_abrt_event(executable, message, stacktrace);
     }
 }
 
@@ -967,19 +972,16 @@ static char * create_updated_class_name(char *class_name)
  * Solution for JAR-style URI:
  * file:/home/tester/abrt_connector/bin/JarTest.jar!/SimpleTest.class
  */
-static char * stripped_path_to_main_class(char *path_to_main_class)
+static char *extract_fs_path(char *url_path)
 {
-    /* strip "file:" from the beginning */
-    char *out = path_to_main_class + sizeof("file:") - 1;
+    char *jar_sfx = strstr(url_path, ".jar!");
+    if (NULL != jar_sfx)
+        jar_sfx[sizeof(".jar") - 1] = '\0';
 
-    char *excl = strchr(out, '!');
+    if (strncmp("file:", url_path, sizeof("file:") - 1) == 0)
+        memmove(url_path, url_path + (sizeof("file:") - 1), 2 + strlen(url_path) - sizeof("file:"));
 
-    /* strip everything after '!' */
-    if (excl != NULL)
-    {
-        *excl = 0;
-    }
-    return out;
+    return url_path;
 }
 
 
@@ -1053,16 +1055,7 @@ static char *get_main_class(
         return UNKNOWN_CLASS_NAME;
     }
 
-    /* Solution for JAR-style URI:
-     * file:/home/tester/abrt_connector/bin/JarTest.jar!/SimpleTest.class
-     */
-    if (strncpy("file:", path_to_class, sizeof("file:") == 0))
-    {
-        return stripped_path_to_main_class(path_to_class);
-    }
-
-    /* path_to_class is allocated on heap -> ok to return this pointer */
-    return path_to_class;
+    return extract_fs_path(path_to_class);
 }
 
 
@@ -1610,7 +1603,8 @@ static int print_stack_trace_element(
             JNIEnv         *jni_env,
             jobject         stack_frame,
             char           *stack_trace_str,
-            unsigned        max_length)
+            unsigned        max_length,
+            char           **class_fs_path)
 {
     jclass stack_frame_class = (*jni_env)->GetObjectClass(jni_env, stack_frame);
     jmethodID get_class_name_method = (*jni_env)->GetMethodID(jni_env, stack_frame_class, "getClassName", "()Ljava/lang/String;");
@@ -1654,6 +1648,14 @@ static int print_stack_trace_element(
         if (updated_cls_name_str != NULL)
         {
             class_location = get_path_to_class(jvmti_env, jni_env, class_of_frame_method, updated_cls_name_str, TO_EXTERNAL_FORM_METHOD_NAME);
+
+            if (NULL != class_fs_path)
+            {
+                *class_fs_path = get_path_to_class(jvmti_env, jni_env, class_of_frame_method, updated_cls_name_str, GET_PATH_METHOD_NAME);
+                if (NULL != *class_fs_path)
+                    *class_fs_path = extract_fs_path(*class_fs_path);
+            }
+
             free(updated_cls_name_str);
         }
         (*jni_env)->DeleteLocalRef(jni_env, class_of_frame_method);
@@ -1704,7 +1706,8 @@ static int print_exception_stack_trace(
             JNIEnv   *jni_env,
             jobject   exception,
             char     *stack_trace_str,
-            size_t    max_stack_trace_lenght)
+            size_t    max_stack_trace_lenght,
+            char     **executable)
 {
 
     jclass exception_class = (*jni_env)->GetObjectClass(jni_env, exception);
@@ -1769,7 +1772,14 @@ static int print_exception_stack_trace(
     for (jint i = 0; i < array_size; ++i)
     {
         jobject frame_element = (*jni_env)->GetObjectArrayElement(jni_env, stack_trace_array, i);
-        const int frame_wrote = print_stack_trace_element(jvmti_env, jni_env, frame_element, stack_trace_str + wrote, max_stack_trace_lenght - wrote);
+
+        const int frame_wrote = print_stack_trace_element(jvmti_env,
+                jni_env,
+                frame_element,
+                stack_trace_str + wrote,
+                max_stack_trace_lenght - wrote,
+                ((NULL != executable && array_size - 1 == i) ? executable : NULL));
+
         (*jni_env)->DeleteLocalRef(jni_env, frame_element);
 
         if (frame_wrote <= 0)
@@ -1791,7 +1801,8 @@ static char *generate_thread_stack_trace(
             jvmtiEnv *jvmti_env,
             JNIEnv   *jni_env,
             char     *thread_name,
-            jobject  exception)
+            jobject  exception,
+            char     **executable)
 {
     char  *stack_trace_str;
     /* allocate string which will contain stack trace */
@@ -1803,7 +1814,13 @@ static char *generate_thread_stack_trace(
     }
 
     int wrote = snprintf(stack_trace_str, MAX_STACK_TRACE_STRING_LENGTH, "Exception in thread \"%s\" ", thread_name);
-    int exception_wrote = print_exception_stack_trace(jvmti_env, jni_env, exception, stack_trace_str + wrote, MAX_STACK_TRACE_STRING_LENGTH - wrote);
+    int exception_wrote = print_exception_stack_trace(jvmti_env,
+            jni_env,
+            exception,
+            stack_trace_str + wrote,
+            MAX_STACK_TRACE_STRING_LENGTH - wrote,
+            executable);
+
     if (exception_wrote <= 0)
     {
         free(stack_trace_str);
@@ -1841,7 +1858,12 @@ static char *generate_thread_stack_trace(
         strcat(stack_trace_str + wrote, CAUSED_STACK_TRACE_HEADER);
         wrote += sizeof(CAUSED_STACK_TRACE_HEADER) - 1;
 
-        const int cause_wrote = print_exception_stack_trace(jvmti_env, jni_env, cause, stack_trace_str + wrote, MAX_STACK_TRACE_STRING_LENGTH - wrote);
+        const int cause_wrote = print_exception_stack_trace(jvmti_env,
+                jni_env,
+                cause,
+                stack_trace_str + wrote,
+                MAX_STACK_TRACE_STRING_LENGTH - wrote,
+                /*No executable*/NULL);
 
         if (cause_wrote <= 0)
         {   /* <  0 : this should never happen, snprintf() usually works w/o errors */
@@ -2098,13 +2120,17 @@ static void JNICALL callback_on_exception(
             char *message = format_exception_reason_message(/*caught?*/NULL != catch_method,
                     updated_exception_name_ptr, class_name_ptr, method_name_ptr);
 
-            char *stack_trace_str = generate_thread_stack_trace(jvmti_env, jni_env, tname, exception_object);
+            char *executable = NULL;
+            char *stack_trace_str = generate_thread_stack_trace(jvmti_env, jni_env, tname, exception_object, &executable);
 
             const char *report_message = message;
             if (NULL == report_message)
                 report_message = (NULL != catch_method) ? "Caught exception" : "Uncaught exception";
 
-            report_stacktrace(report_message, stack_trace_str, NULL != threads_exc_buf);
+            report_stacktrace(NULL != executable ? executable : processProperties.main_class,
+                    report_message,
+                    stack_trace_str,
+                    NULL != threads_exc_buf);
 
             free(message);
             free(stack_trace_str);
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index d208fdf..6be9498 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -42,7 +42,9 @@ endfunction()
 
 _add_class_target(SimpleTest TEST_JAVA_TARGETS)
 _add_class_target(RemoteTest TEST_JAVA_TARGETS SimpleTest)
-_add_class_target(MultiThreadTest TEST_JAVA_TARGETS SimpleTest)
+_add_class_target(ThreadCaughtException TEST_JAVA_TARGETS SimpleTest)
+_add_class_target(ThreadUncaughtException TEST_JAVA_TARGETS SimpleTest)
+_add_class_target(MultiThreadTest TEST_JAVA_TARGETS SimpleTest ThreadCaughtException ThreadUncaughtException)
 _add_class_target(Test TEST_JAVA_TARGETS)
 _add_class_target(com/redhat/abrt/test/Test TEST_JAVA_TARGETS)
 _add_class_target(com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames TEST_JAVA_TARGETS)
@@ -55,7 +57,7 @@ _add_class_target(OverridenEqualExceptionTest TEST_JAVA_TARGETS)
 _add_class_target(NoException TEST_JAVA_TARGETS)
 _add_class_target(ThreadStressTest TEST_JAVA_TARGETS SimpleTest)
 
-_add_jar_target(JarTest JAR_TEST_PATH SimpleTest)
+_add_jar_target(JarTest JAR_TEST_PATH SimpleTest ThreadCaughtException ThreadUncaughtException MultiThreadTest)
 set(REMOTE_JAR_PATH ${HTTP_DIR}/JarTest.jar)
 
 add_custom_target(AllTestClasses DEPENDS ${TEST_JAVA_TARGETS})
@@ -102,7 +104,7 @@ function(_add_test_target target_name)
     add_custom_target(
         ${target_name}
         ${pre_command}
-        COMMAND LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/src ${Java_JAVA_EXECUTABLE} -agentlib:${AGENT_NAME}="${agent_options},abrt=$$ABRT_ENABLED,output=${target_name}.log" ${java_params} -platform.jvmtiSupported true
+        COMMAND LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/src ${Java_JAVA_EXECUTABLE} -agentlib:${AGENT_NAME}="${agent_options},abrt=$$ABRT_ENABLED,output=${target_name}.log" ${java_params}
         DEPENDS AbrtChecker ${depends}
         WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
     )
@@ -274,6 +276,15 @@ add_custom_target(
 )
 add_test(test_default_no_log_file make run_default_no_log_file)
 
+_add_test_target(
+    run_remote_thread
+    RemoteTest ${JAR_TEST_PATH} MultiThreadTest
+    PRE rm -f SimpleTest.class ThreadCaughtException.class ThreadUncaughtException.class MultiThreadTest.class
+    DEPENDS ${TEST_JAVA_TARGETS} ${JAR_TEST_PATH}
+    AGENT_OPTIONS caught=java.lang.ArrayIndexOutOfBoundsException:java.lang.NullPointerException
+)
+_add_test(run_remote_thread 0)
+
 
 get_directory_property(all_run_targets ALL_RUN_TARGETS)
 add_custom_target(run_all DEPENDS ${all_run_targets})
diff --git a/test/MultiThreadTest.java b/test/MultiThreadTest.java
index a200314..316b864 100644
--- a/test/MultiThreadTest.java
+++ b/test/MultiThreadTest.java
@@ -1,6 +1,5 @@
 import java.io.*;
 import java.net.*;
-//import SimpleTest;
 
 
 /**
@@ -8,19 +7,18 @@ import java.net.*;
  * @author Jakub Filak &lt;jfilak@redhat.com&gt;
  */
 
-class ThreadCaughtException extends Thread {
-    public void run() {
-        SimpleTest.throwAndCatchAllExceptions();
+public class MultiThreadTest {
+
+    public static void throwAndCatchAllExceptions()
+    {
+        runThread(new ThreadCaughtException());
     }
-}
 
-class ThreadUncaughtException extends Thread {
-    public void run() {
-        SimpleTest.throwAndDontCatchException();
+    public static void throwAndDontCatchException()
+    {
+        runThread(new ThreadUncaughtException());
     }
-}
 
-public class MultiThreadTest {
    public static void runThread(Thread t) {
         t.start();
         try {
@@ -36,9 +34,9 @@ public class MultiThreadTest {
      */
     public static void main(String args[]) {
         System.out.println("Test.java");
-        runThread(new ThreadCaughtException());
+        throwAndCatchAllExceptions();
         System.out.println("continue...");
-        runThread(new ThreadUncaughtException());
+        throwAndDontCatchException();
         System.exit(0);
     }
 }
diff --git a/test/RemoteTest.java b/test/RemoteTest.java
index e657ae4..6071f8e 100644
--- a/test/RemoteTest.java
+++ b/test/RemoteTest.java
@@ -57,32 +57,51 @@ public class RemoteTest {
      * Entry point to this simple test.
      */
     public static void main(String args[]) throws IOException, NoSuchMethodException, MalformedURLException, IllegalAccessException, ClassNotFoundException, InvocationTargetException {
+        String testClassName = "SimpleTest";
+        Class testClassInstance = null;
+
+        if (args.length == 2) {
+            testClassName = args[1];
+        }
+        else if (args.length > 2) {
+            System.out.println("Accepts either none or one argument.");
+            System.exit(1);
+        }
+
         HttpServer server = HttpServer.create(new InetSocketAddress(54321), 0);
         server.createContext("/", new JarGetter(args[0]));
         server.setExecutor(null); // creates a default executor
         server.start();
 
-        Class simpleTestClass = null;
-
         try {
             Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[]{URL.class});
             method.setAccessible(true);
             method.invoke(ClassLoader.getSystemClassLoader(), new Object[]{new URL("http://localhost:54321/JarTest.jar")});
-            simpleTestClass = Class.forName("SimpleTest");
+
+            /* Loaded these classes into cache. */
+            final String needed[] = {"SimpleTest", "ThreadUncaughtException", "ThreadCaughtException"};
+            for (String requiredClass : needed) {
+                if (null == Class.forName(requiredClass)) {
+                    System.out.println("Cannot get required class: " + requiredClass);
+                    System.exit(1);
+                }
+            }
+
+            testClassInstance = Class.forName(testClassName);
         }
         finally {
             server.stop(0);
         }
 
-        if (null == simpleTestClass) {
-            System.out.println("Cannot get SimpleTest class ...");
+        if (null == testClassInstance) {
+            System.out.println("Cannot get " + testClassName + ".class ...");
             System.exit(1);
         }
 
         System.out.println("RemoteTest.java " + args[0]);
-        simpleTestClass.getMethod("throwAndCatchAllExceptions").invoke(null);
+        testClassInstance.getMethod("throwAndCatchAllExceptions").invoke(null);
         System.out.println("continue...");
-        simpleTestClass.getMethod("throwAndDontCatchException").invoke(null);
+        testClassInstance.getMethod("throwAndDontCatchException").invoke(null);
         System.out.println("If everything works we should not see this message :)");
         System.exit(0);
     }
diff --git a/test/ThreadCaughtException.java b/test/ThreadCaughtException.java
new file mode 100644
index 0000000..5926ee3
--- /dev/null
+++ b/test/ThreadCaughtException.java
@@ -0,0 +1,9 @@
+/**
+ * @author Jakub Filak &lt;jfilak@redhat.com&gt;
+ */
+
+public class ThreadCaughtException extends Thread {
+    public void run() {
+        SimpleTest.throwAndCatchAllExceptions();
+    }
+}
diff --git a/test/ThreadUncaughtException.java b/test/ThreadUncaughtException.java
new file mode 100644
index 0000000..abc4ed1
--- /dev/null
+++ b/test/ThreadUncaughtException.java
@@ -0,0 +1,9 @@
+/**
+ * @author Jakub Filak &lt;jfilak@redhat.com&gt;
+ */
+
+public class ThreadUncaughtException extends Thread {
+    public void run() {
+        SimpleTest.throwAndDontCatchException();
+    }
+}
diff --git a/test/outputs/Linux-armv7l/run_test.log.in b/test/outputs/Linux-armv7l/run_test.log.in
index 5c9e7f7..483aed5 100644
--- a/test/outputs/Linux-armv7l/run_test.log.in
+++ b/test/outputs/Linux-armv7l/run_test.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.io.FileNotFoundException: _wrong_file_ (No such
 	at Test.readWrongFile(Test.java:89) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:461) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileInputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileInputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileInputStream.class]
@@ -12,6 +13,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.readUnreadableFile(Test.java:111) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:462) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileOutputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileOutputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileOutputStream.class]
@@ -20,6 +22,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.writeToUnwritableFile(Test.java:134) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:463) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Integer.parseInt()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Integer.parseInt(Integer.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Integer.class]
@@ -38,6 +41,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.InetAddress$1.lookupAllHostAddr()
 Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service not known
 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/Inet6AddressImpl.class]
@@ -52,6 +56,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.AbstractPlainSocketImpl.connect()
 Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/AbstractPlainSocketImpl.class]
@@ -63,6 +68,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.ConnectException in method java.net.AbstractPlainSocketImpl.doConnect()
 Exception in thread "main" java.net.ConnectException: Connection refused
 	at java.net.PlainSocketImpl.socketConnect(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/PlainSocketImpl.class]
@@ -77,6 +83,7 @@ Exception in thread "main" java.net.ConnectException: Connection refused
 	at Test.readFromSocket(Test.java:177) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:474) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Long.parseLong()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Long.parseLong(Long.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Long.class]
@@ -86,6 +93,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method sun.net.www.protocol.http.HttpURLConnection.getInputStream()
 Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321/_this_does_not_exists_
 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/net/www/protocol/http/HttpURLConnection.class]
@@ -93,6 +101,7 @@ Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.MalformedURLException in method java.net.URL.<init>()
 Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&malformed URL@#$%^&*()
 	at java.net.URL.<init>(URL.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/URL.class]
@@ -101,12 +110,14 @@ Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&ma
 	at Test.malformedURL(Test.java:194) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:476) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ArrayIndexOutOfBoundsException in method Test.throwIndexOutOfBoundsException()
 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at Test.throwIndexOutOfBoundsException(Test.java:266) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchIndexOutOfBoundsException(Test.java:347) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:486) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.StringIndexOutOfBoundsException in method java.lang.String.charAt()
 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
 	at java.lang.String.charAt(String.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/String.class]
@@ -114,18 +125,21 @@ Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
 	at Test.catchStringIndexOutOfBoundsException(Test.java:362) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:487) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchNullPointerException(Test.java:377) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:488) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ClassCastException in method Test.throwClassCastException()
 Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
 	at Test.throwClassCastException(Test.java:302) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchClassCastException(Test.java:392) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:489) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.Runtime.load0()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: xyzzy
 	at java.lang.Runtime.load0(Runtime.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Runtime.class]
@@ -134,6 +148,7 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute
 	at Test.catchUnsatisfiedLinkErrorUserLibrary(Test.java:422) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:491) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.ClassLoader.loadLibrary()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.library.path
 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
@@ -143,8 +158,10 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.libr
 	at Test.catchUnsatisfiedLinkErrorSystemLibrary(Test.java:437) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:492) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
 Uncaught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndDontCatchException(Test.java:501) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:518) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable= @CMAKE_BINARY_DIR@/test/Test.class
diff --git a/test/outputs/Linux-ppc/run_test.log.in b/test/outputs/Linux-ppc/run_test.log.in
index 5c9e7f7..6134d09 100644
--- a/test/outputs/Linux-ppc/run_test.log.in
+++ b/test/outputs/Linux-ppc/run_test.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.io.FileNotFoundException: _wrong_file_ (No such
 	at Test.readWrongFile(Test.java:89) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:461) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileInputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileInputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileInputStream.class]
@@ -12,6 +13,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.readUnreadableFile(Test.java:111) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:462) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileOutputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileOutputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileOutputStream.class]
@@ -20,6 +22,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.writeToUnwritableFile(Test.java:134) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:463) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Integer.parseInt()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Integer.parseInt(Integer.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Integer.class]
@@ -38,6 +41,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.InetAddress$1.lookupAllHostAddr()
 Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service not known
 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/Inet6AddressImpl.class]
@@ -52,6 +56,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.AbstractPlainSocketImpl.connect()
 Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/AbstractPlainSocketImpl.class]
@@ -63,6 +68,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.ConnectException in method java.net.AbstractPlainSocketImpl.doConnect()
 Exception in thread "main" java.net.ConnectException: Connection refused
 	at java.net.PlainSocketImpl.socketConnect(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/PlainSocketImpl.class]
@@ -77,6 +83,7 @@ Exception in thread "main" java.net.ConnectException: Connection refused
 	at Test.readFromSocket(Test.java:177) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:474) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Long.parseLong()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Long.parseLong(Long.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Long.class]
@@ -86,6 +93,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method sun.net.www.protocol.http.HttpURLConnection.getInputStream()
 Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321/_this_does_not_exists_
 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/net/www/protocol/http/HttpURLConnection.class]
@@ -93,6 +101,7 @@ Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.MalformedURLException in method java.net.URL.<init>()
 Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&malformed URL@#$%^&*()
 	at java.net.URL.<init>(URL.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/URL.class]
@@ -101,12 +110,14 @@ Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&ma
 	at Test.malformedURL(Test.java:194) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:476) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ArrayIndexOutOfBoundsException in method Test.throwIndexOutOfBoundsException()
 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at Test.throwIndexOutOfBoundsException(Test.java:266) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchIndexOutOfBoundsException(Test.java:347) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:486) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.StringIndexOutOfBoundsException in method java.lang.String.charAt()
 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
 	at java.lang.String.charAt(String.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/String.class]
@@ -114,18 +125,21 @@ Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
 	at Test.catchStringIndexOutOfBoundsException(Test.java:362) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:487) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchNullPointerException(Test.java:377) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:488) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ClassCastException in method Test.throwClassCastException()
 Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
 	at Test.throwClassCastException(Test.java:302) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchClassCastException(Test.java:392) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:489) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.Runtime.load0()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: xyzzy
 	at java.lang.Runtime.load0(Runtime.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Runtime.class]
@@ -134,6 +148,7 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute
 	at Test.catchUnsatisfiedLinkErrorUserLibrary(Test.java:422) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:491) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.ClassLoader.loadLibrary()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.library.path
 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
@@ -147,4 +162,5 @@ Uncaught exception java.lang.NullPointerException in method Test.throwNullPointe
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndDontCatchException(Test.java:501) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 	at Test.main(Test.java:518) [file:@CMAKE_BINARY_DIR@/test/Test.class]
diff --git a/test/outputs/Linux-ppc64/run_test.log.in b/test/outputs/Linux-ppc64/run_test.log.in
index 5c9e7f7..fcf63cb 100644
--- a/test/outputs/Linux-ppc64/run_test.log.in
+++ b/test/outputs/Linux-ppc64/run_test.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.io.FileNotFoundException: _wrong_file_ (No such
 	at Test.readWrongFile(Test.java:89) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:461) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileInputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileInputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileInputStream.class]
@@ -12,6 +13,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.readUnreadableFile(Test.java:111) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:462) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileOutputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileOutputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileOutputStream.class]
@@ -20,6 +22,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.writeToUnwritableFile(Test.java:134) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:463) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Integer.parseInt()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Integer.parseInt(Integer.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Integer.class]
@@ -38,6 +41,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.InetAddress$1.lookupAllHostAddr()
 Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service not known
 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/Inet6AddressImpl.class]
@@ -52,6 +56,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.AbstractPlainSocketImpl.connect()
 Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/AbstractPlainSocketImpl.class]
@@ -63,6 +68,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.ConnectException in method java.net.AbstractPlainSocketImpl.doConnect()
 Exception in thread "main" java.net.ConnectException: Connection refused
 	at java.net.PlainSocketImpl.socketConnect(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/PlainSocketImpl.class]
@@ -77,6 +83,7 @@ Exception in thread "main" java.net.ConnectException: Connection refused
 	at Test.readFromSocket(Test.java:177) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:474) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Long.parseLong()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Long.parseLong(Long.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Long.class]
@@ -86,6 +93,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method sun.net.www.protocol.http.HttpURLConnection.getInputStream()
 Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321/_this_does_not_exists_
 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/net/www/protocol/http/HttpURLConnection.class]
@@ -93,6 +101,7 @@ Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.MalformedURLException in method java.net.URL.<init>()
 Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&malformed URL@#$%^&*()
 	at java.net.URL.<init>(URL.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/URL.class]
@@ -101,12 +110,14 @@ Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&ma
 	at Test.malformedURL(Test.java:194) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:476) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ArrayIndexOutOfBoundsException in method Test.throwIndexOutOfBoundsException()
 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at Test.throwIndexOutOfBoundsException(Test.java:266) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchIndexOutOfBoundsException(Test.java:347) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:486) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.StringIndexOutOfBoundsException in method java.lang.String.charAt()
 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
 	at java.lang.String.charAt(String.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/String.class]
@@ -114,18 +125,21 @@ Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
 	at Test.catchStringIndexOutOfBoundsException(Test.java:362) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:487) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchNullPointerException(Test.java:377) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:488) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ClassCastException in method Test.throwClassCastException()
 Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
 	at Test.throwClassCastException(Test.java:302) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchClassCastException(Test.java:392) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:489) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.Runtime.load0()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: xyzzy
 	at java.lang.Runtime.load0(Runtime.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Runtime.class]
@@ -134,6 +148,7 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute
 	at Test.catchUnsatisfiedLinkErrorUserLibrary(Test.java:422) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:491) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.ClassLoader.loadLibrary()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.library.path
 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
@@ -148,3 +163,4 @@ Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndDontCatchException(Test.java:501) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:518) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
diff --git a/test/outputs/Linux-s390/run_test.log.in b/test/outputs/Linux-s390/run_test.log.in
index 5c9e7f7..fcf63cb 100644
--- a/test/outputs/Linux-s390/run_test.log.in
+++ b/test/outputs/Linux-s390/run_test.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.io.FileNotFoundException: _wrong_file_ (No such
 	at Test.readWrongFile(Test.java:89) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:461) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileInputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileInputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileInputStream.class]
@@ -12,6 +13,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.readUnreadableFile(Test.java:111) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:462) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileOutputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileOutputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileOutputStream.class]
@@ -20,6 +22,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.writeToUnwritableFile(Test.java:134) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:463) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Integer.parseInt()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Integer.parseInt(Integer.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Integer.class]
@@ -38,6 +41,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.InetAddress$1.lookupAllHostAddr()
 Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service not known
 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/Inet6AddressImpl.class]
@@ -52,6 +56,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.AbstractPlainSocketImpl.connect()
 Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/AbstractPlainSocketImpl.class]
@@ -63,6 +68,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.ConnectException in method java.net.AbstractPlainSocketImpl.doConnect()
 Exception in thread "main" java.net.ConnectException: Connection refused
 	at java.net.PlainSocketImpl.socketConnect(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/PlainSocketImpl.class]
@@ -77,6 +83,7 @@ Exception in thread "main" java.net.ConnectException: Connection refused
 	at Test.readFromSocket(Test.java:177) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:474) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Long.parseLong()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Long.parseLong(Long.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Long.class]
@@ -86,6 +93,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method sun.net.www.protocol.http.HttpURLConnection.getInputStream()
 Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321/_this_does_not_exists_
 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/net/www/protocol/http/HttpURLConnection.class]
@@ -93,6 +101,7 @@ Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.MalformedURLException in method java.net.URL.<init>()
 Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&malformed URL@#$%^&*()
 	at java.net.URL.<init>(URL.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/URL.class]
@@ -101,12 +110,14 @@ Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&ma
 	at Test.malformedURL(Test.java:194) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:476) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ArrayIndexOutOfBoundsException in method Test.throwIndexOutOfBoundsException()
 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at Test.throwIndexOutOfBoundsException(Test.java:266) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchIndexOutOfBoundsException(Test.java:347) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:486) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.StringIndexOutOfBoundsException in method java.lang.String.charAt()
 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
 	at java.lang.String.charAt(String.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/String.class]
@@ -114,18 +125,21 @@ Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
 	at Test.catchStringIndexOutOfBoundsException(Test.java:362) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:487) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchNullPointerException(Test.java:377) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:488) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ClassCastException in method Test.throwClassCastException()
 Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
 	at Test.throwClassCastException(Test.java:302) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchClassCastException(Test.java:392) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:489) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.Runtime.load0()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: xyzzy
 	at java.lang.Runtime.load0(Runtime.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Runtime.class]
@@ -134,6 +148,7 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute
 	at Test.catchUnsatisfiedLinkErrorUserLibrary(Test.java:422) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:491) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.ClassLoader.loadLibrary()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.library.path
 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
@@ -148,3 +163,4 @@ Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndDontCatchException(Test.java:501) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:518) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
diff --git a/test/outputs/Linux-s390x/run_test.log.in b/test/outputs/Linux-s390x/run_test.log.in
index 5c9e7f7..fcf63cb 100644
--- a/test/outputs/Linux-s390x/run_test.log.in
+++ b/test/outputs/Linux-s390x/run_test.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.io.FileNotFoundException: _wrong_file_ (No such
 	at Test.readWrongFile(Test.java:89) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:461) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileInputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileInputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileInputStream.class]
@@ -12,6 +13,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.readUnreadableFile(Test.java:111) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:462) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method java.io.FileOutputStream.<init>()
 Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permission denied)
 	at java.io.FileOutputStream.open(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/io/FileOutputStream.class]
@@ -20,6 +22,7 @@ Exception in thread "main" java.io.FileNotFoundException: /root/.bashrc (Permiss
 	at Test.writeToUnwritableFile(Test.java:134) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.fileRelatedIssues(Test.java:463) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:513) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Integer.parseInt()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Integer.parseInt(Integer.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Integer.class]
@@ -38,6 +41,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.InetAddress$1.lookupAllHostAddr()
 Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service not known
 	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/Inet6AddressImpl.class]
@@ -52,6 +56,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy: Name or service
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.UnknownHostException in method java.net.AbstractPlainSocketImpl.connect()
 Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/AbstractPlainSocketImpl.class]
@@ -63,6 +68,7 @@ Exception in thread "main" java.net.UnknownHostException: xyzzy
 	at Test.readFromUnknownHost(Test.java:157) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:473) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.ConnectException in method java.net.AbstractPlainSocketImpl.doConnect()
 Exception in thread "main" java.net.ConnectException: Connection refused
 	at java.net.PlainSocketImpl.socketConnect(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/PlainSocketImpl.class]
@@ -77,6 +83,7 @@ Exception in thread "main" java.net.ConnectException: Connection refused
 	at Test.readFromSocket(Test.java:177) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:474) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NumberFormatException in method java.lang.Long.parseLong()
 Exception in thread "main" java.lang.NumberFormatException: null
 	at java.lang.Long.parseLong(Long.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Long.class]
@@ -86,6 +93,7 @@ Exception in thread "main" java.lang.NumberFormatException: null
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.io.FileNotFoundException in method sun.net.www.protocol.http.HttpURLConnection.getInputStream()
 Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321/_this_does_not_exists_
 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/net/www/protocol/http/HttpURLConnection.class]
@@ -93,6 +101,7 @@ Exception in thread "main" java.io.FileNotFoundException: http://localhost:54321
 	at Test.readFromURL(Test.java:237) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:475) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.net.MalformedURLException in method java.net.URL.<init>()
 Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&malformed URL@#$%^&*()
 	at java.net.URL.<init>(URL.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/net/URL.class]
@@ -101,12 +110,14 @@ Exception in thread "main" java.net.MalformedURLException: no protocol: @#$%^&ma
 	at Test.malformedURL(Test.java:194) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.networkRelatedIssues(Test.java:476) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:514) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ArrayIndexOutOfBoundsException in method Test.throwIndexOutOfBoundsException()
 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at Test.throwIndexOutOfBoundsException(Test.java:266) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchIndexOutOfBoundsException(Test.java:347) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:486) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.StringIndexOutOfBoundsException in method java.lang.String.charAt()
 Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
 	at java.lang.String.charAt(String.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/String.class]
@@ -114,18 +125,21 @@ Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String ind
 	at Test.catchStringIndexOutOfBoundsException(Test.java:362) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:487) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.NullPointerException in method Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchNullPointerException(Test.java:377) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:488) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.ClassCastException in method Test.throwClassCastException()
 Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
 	at Test.throwClassCastException(Test.java:302) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.catchClassCastException(Test.java:392) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:489) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.Runtime.load0()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute path of the library: xyzzy
 	at java.lang.Runtime.load0(Runtime.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Runtime.class]
@@ -134,6 +148,7 @@ Exception in thread "main" java.lang.UnsatisfiedLinkError: Expecting an absolute
 	at Test.catchUnsatisfiedLinkErrorUserLibrary(Test.java:422) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndCatchAllExceptions(Test.java:491) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:515) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
 Caught exception java.lang.UnsatisfiedLinkError in method java.lang.ClassLoader.loadLibrary()
 Exception in thread "main" java.lang.UnsatisfiedLinkError: no xyzzy in java.library.path
 	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
@@ -148,3 +163,4 @@ Exception in thread "main" java.lang.NullPointerException
 	at Test.throwNullPointerException(Test.java:290) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.throwAndDontCatchException(Test.java:501) [file:@CMAKE_BINARY_DIR@/test/Test.class]
 	at Test.main(Test.java:518) [file:@CMAKE_BINARY_DIR@/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/Test.class
diff --git a/test/outputs/run.log.in b/test/outputs/run.log.in
index 4dc5c62..aa8b2c8 100644
--- a/test/outputs/run.log.in
+++ b/test/outputs/run.log.in
@@ -4,8 +4,10 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at SimpleTest.catchIndexOutOfBoundsException(SimpleTest.java:47) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.main(SimpleTest.java:81) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
+executable: @CMAKE_BINARY_DIR@/test/SimpleTest.class
 Uncaught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.main(SimpleTest.java:83) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
+executable: @CMAKE_BINARY_DIR@/test/SimpleTest.class
diff --git a/test/outputs/run_bad_class.log.in b/test/outputs/run_bad_class.log.in
index a540d89..348f056 100644
--- a/test/outputs/run_bad_class.log.in
+++ b/test/outputs/run_bad_class.log.in
@@ -10,3 +10,4 @@ Exception in thread "main" java.lang.ClassNotFoundException: foobar
 	at java.lang.Class.forName0(Native Method) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Class.class]
 	at java.lang.Class.forName(Class.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/Class.class]
 	at BadClassTest.main(BadClassTest.java:13) [file:@CMAKE_BINARY_DIR@/test/BadClassTest.class]
+executable: @CMAKE_BINARY_DIR@/test/BadClassTest.class
diff --git a/test/outputs/run_cut_exception_namespace.log.in b/test/outputs/run_cut_exception_namespace.log.in
index 75b54c1..5519865 100644
--- a/test/outputs/run_cut_exception_namespace.log.in
+++ b/test/outputs/run_cut_exception_namespace.log.in
@@ -2,3 +2,4 @@ Uncaught exception UnbelievableLongJavaClassNameException in method Unbelievable
 Exception in thread "main" com.redhat.abrt.test.UnbelievableLongJavaClassNameException
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.oneTwoThreeFroFiveSixSevenEightNineTenElevenTwelveThirteenSixteenSeventeenUpToOneHundredThousand(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:40) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.main(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:69) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class
diff --git a/test/outputs/run_cut_method_class.log.in b/test/outputs/run_cut_method_class.log.in
index eb464a7..0a58804 100644
--- a/test/outputs/run_cut_method_class.log.in
+++ b/test/outputs/run_cut_method_class.log.in
@@ -2,3 +2,4 @@ Uncaught exception UnbelievableLongJavaClassNameException in method oneTwoThreeF
 Exception in thread "main" com.redhat.abrt.test.UnbelievableLongJavaClassNameException
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.oneTwoThreeFroFiveSixSevenEightNineTenElevenTwelveThirteenSixteenSeventeenEighteenNineteenTwentyUpToOneHundredThousand(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:35) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.main(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:65) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class
diff --git a/test/outputs/run_cut_method_namespace.log.in b/test/outputs/run_cut_method_namespace.log.in
index 0ec2438..338819c 100644
--- a/test/outputs/run_cut_method_namespace.log.in
+++ b/test/outputs/run_cut_method_namespace.log.in
@@ -2,3 +2,4 @@ Uncaught exception com.redhat.abrt.test.UnbelievableLongJavaClassNameException i
 Exception in thread "main" com.redhat.abrt.test.UnbelievableLongJavaClassNameException
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.oneTwoThreeFroFiveSixSevenEightNineTenElevenTwelveThirteenSixteenUpToOneHundredThousand(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:45) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.main(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:73) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class
diff --git a/test/outputs/run_cut_reason_message.log.in b/test/outputs/run_cut_reason_message.log.in
index 5364f65..0055fe7 100644
--- a/test/outputs/run_cut_reason_message.log.in
+++ b/test/outputs/run_cut_reason_message.log.in
@@ -2,3 +2,4 @@ Uncaught exception UnbelievableLongJavaClassNameException in method oneTwoThreeF
 Exception in thread "main" com.redhat.abrt.test.UnbelievableLongJavaClassNameException
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.oneTwoThreeFroFiveSixSevenEightNineTenElevenTwelveThirteenSixteenSeventeenEighteenNineteenTwentyTwentyOneTwentyTwooTwentyThreeTwentyFourTwentyFiveTwentySixTwentySevenTwentyEightTwentyNineUpToOneHundredThousand(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:30) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
 	at com.redhat.abrt.test.UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.main(UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.java:61) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/UnbelievableLongJavaClassNameHavingExtremlyLongAndSenselessMethodNames.class
diff --git a/test/outputs/run_inner.log.in b/test/outputs/run_inner.log.in
index 4789aeb..c1ef063 100644
--- a/test/outputs/run_inner.log.in
+++ b/test/outputs/run_inner.log.in
@@ -5,6 +5,7 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at InnerExceptions.run(InnerExceptions.java:11) [file:@CMAKE_BINARY_DIR@/test/InnerExceptions.class]
 	at InnerExceptions.main(InnerExceptions.java:28) [file:@CMAKE_BINARY_DIR@/test/InnerExceptions.class]
+executable: @CMAKE_BINARY_DIR@/test/InnerExceptions.class
 Uncaught exception java.lang.RuntimeException in method InnerExceptions.run()
 Exception in thread "main" java.lang.RuntimeException: java.lang.NullPointerException
 	at InnerExceptions.run(InnerExceptions.java:17) [file:@CMAKE_BINARY_DIR@/test/InnerExceptions.class]
@@ -14,3 +15,4 @@ Caused by: java.lang.NullPointerException
 	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at InnerExceptions.run(InnerExceptions.java:13) [file:@CMAKE_BINARY_DIR@/test/InnerExceptions.class]
 	at InnerExceptions.main(InnerExceptions.java:28) [file:@CMAKE_BINARY_DIR@/test/InnerExceptions.class]
+executable: @CMAKE_BINARY_DIR@/test/InnerExceptions.class
diff --git a/test/outputs/run_jar.log.in b/test/outputs/run_jar.log.in
index 6e10d2d..85cf311 100644
--- a/test/outputs/run_jar.log.in
+++ b/test/outputs/run_jar.log.in
@@ -4,8 +4,10 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at SimpleTest.catchIndexOutOfBoundsException(SimpleTest.java:47) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
 	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
 	at SimpleTest.main(SimpleTest.java:81) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
+executable: @CMAKE_BINARY_DIR@/test/JarTest.jar
 Uncaught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
 	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
 	at SimpleTest.main(SimpleTest.java:83) [jar:file:@CMAKE_BINARY_DIR@/test/JarTest.jar!/SimpleTest.class]
+executable: @CMAKE_BINARY_DIR@/test/JarTest.jar
diff --git a/test/outputs/run_missing_class_test.log.in b/test/outputs/run_missing_class_test.log.in
index df77057..ea3dc25 100644
--- a/test/outputs/run_missing_class_test.log.in
+++ b/test/outputs/run_missing_class_test.log.in
@@ -7,3 +7,4 @@ Exception in thread "main" java.lang.ClassNotFoundException: MissingClassTest
 	at java.lang.ClassLoader.loadClass(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/misc/Launcher$AppClassLoader.class]
 	at java.lang.ClassLoader.loadClass(ClassLoader.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/ClassLoader.class]
+executable: JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar
diff --git a/test/outputs/run_package.log.in b/test/outputs/run_package.log.in
index d8fbc79..7c7e76f 100644
--- a/test/outputs/run_package.log.in
+++ b/test/outputs/run_package.log.in
@@ -4,8 +4,10 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at com.redhat.abrt.test.Test.catchIndexOutOfBoundsException(Test.java:49) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
 	at com.redhat.abrt.test.Test.throwAndCatchAllExceptions(Test.java:63) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
 	at com.redhat.abrt.test.Test.main(Test.java:82) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class
 Uncaught exception java.lang.NullPointerException in method com.redhat.abrt.test.Test.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at com.redhat.abrt.test.Test.throwNullPointerException(Test.java:38) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
 	at com.redhat.abrt.test.Test.throwAndDontCatchException(Test.java:72) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
 	at com.redhat.abrt.test.Test.main(Test.java:84) [file:@CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class]
+executable: @CMAKE_BINARY_DIR@/test/com/redhat/abrt/test/Test.class
diff --git a/test/outputs/run_remote.log.in b/test/outputs/run_remote.log.in
index a18e90d..90f5db7 100644
--- a/test/outputs/run_remote.log.in
+++ b/test/outputs/run_remote.log.in
@@ -7,7 +7,8 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/reflect/NativeMethodAccessorImpl.class]
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/reflect/DelegatingMethodAccessorImpl.class]
 	at java.lang.reflect.Method.invoke(Method.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/reflect/Method.class]
-	at RemoteTest.main(RemoteTest.java:83) [file:@CMAKE_BINARY_DIR@/test/RemoteTest.class]
+	at RemoteTest.main(RemoteTest.java:102) [file:@CMAKE_BINARY_DIR@/test/RemoteTest.class]
+executable: @CMAKE_BINARY_DIR@/test/RemoteTest.class
 Uncaught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
@@ -16,4 +17,5 @@ Exception in thread "main" java.lang.NullPointerException
 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/reflect/NativeMethodAccessorImpl.class]
 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/sun/reflect/DelegatingMethodAccessorImpl.class]
 	at java.lang.reflect.Method.invoke(Method.java:LINENO) [jar:file:JAVA_AND_SYSTEM_SPECIFIC_PATH/rt.jar!/java/lang/reflect/Method.class]
-	at RemoteTest.main(RemoteTest.java:85) [file:@CMAKE_BINARY_DIR@/test/RemoteTest.class]
+	at RemoteTest.main(RemoteTest.java:104) [file:@CMAKE_BINARY_DIR@/test/RemoteTest.class]
+executable: @CMAKE_BINARY_DIR@/test/RemoteTest.class
diff --git a/test/outputs/run_remote_thread.log.in b/test/outputs/run_remote_thread.log.in
new file mode 100644
index 0000000..ecca10e
--- /dev/null
+++ b/test/outputs/run_remote_thread.log.in
@@ -0,0 +1,13 @@
+Caught exception java.lang.ArrayIndexOutOfBoundsException in method SimpleTest.throwIndexOutOfBoundsException()
+Exception in thread "Thread-3" java.lang.ArrayIndexOutOfBoundsException: 42
+	at SimpleTest.throwIndexOutOfBoundsException(SimpleTest.java:24) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
+	at SimpleTest.catchIndexOutOfBoundsException(SimpleTest.java:47) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
+	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
+	at ThreadCaughtException.run(ThreadCaughtException.java:7) [jar:http://localhost:54321/JarTest.jar!/ThreadCaughtException.class]
+executable: http://localhost:54321/JarTest.jar
+Uncaught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
+Exception in thread "Thread-4" java.lang.NullPointerException
+	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
+	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [jar:http://localhost:54321/JarTest.jar!/SimpleTest.class]
+	at ThreadUncaughtException.run(ThreadUncaughtException.java:7) [jar:http://localhost:54321/JarTest.jar!/ThreadUncaughtException.class]
+executable: http://localhost:54321/JarTest.jar
diff --git a/test/outputs/run_threads.log.in b/test/outputs/run_threads.log.in
index ad80099..b9089b7 100644
--- a/test/outputs/run_threads.log.in
+++ b/test/outputs/run_threads.log.in
@@ -3,9 +3,11 @@ Exception in thread "Thread-0" java.lang.ArrayIndexOutOfBoundsException: 42
 	at SimpleTest.throwIndexOutOfBoundsException(SimpleTest.java:24) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.catchIndexOutOfBoundsException(SimpleTest.java:47) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
-	at ThreadCaughtException.run(MultiThreadTest.java:13) [file:@CMAKE_BINARY_DIR@/test/ThreadCaughtException.class]
+	at ThreadCaughtException.run(ThreadCaughtException.java:7) [file:@CMAKE_BINARY_DIR@/test/ThreadCaughtException.class]
+executable: @CMAKE_BINARY_DIR@/test/ThreadCaughtException.class
 Uncaught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
 Exception in thread "Thread-1" java.lang.NullPointerException
 	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
-	at ThreadUncaughtException.run(MultiThreadTest.java:19) [file:@CMAKE_BINARY_DIR@/test/ThreadUncaughtException.class]
+	at ThreadUncaughtException.run(ThreadUncaughtException.java:7) [file:@CMAKE_BINARY_DIR@/test/ThreadUncaughtException.class]
+executable: @CMAKE_BINARY_DIR@/test/ThreadUncaughtException.class
diff --git a/test/outputs/run_try_finally.log.in b/test/outputs/run_try_finally.log.in
index d690017..877f755 100644
--- a/test/outputs/run_try_finally.log.in
+++ b/test/outputs/run_try_finally.log.in
@@ -5,9 +5,11 @@ Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 42
 	at SimpleTest.throwAndCatchAllExceptions(SimpleTest.java:61) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at TryFinallyTest.run(TryFinallyTest.java:13) [file:@CMAKE_BINARY_DIR@/test/TryFinallyTest.class]
 	at TryFinallyTest.main(TryFinallyTest.java:27) [file:@CMAKE_BINARY_DIR@/test/TryFinallyTest.class]
+executable: @CMAKE_BINARY_DIR@/test/TryFinallyTest.class
 Caught exception java.lang.NullPointerException in method SimpleTest.throwNullPointerException()
 Exception in thread "main" java.lang.NullPointerException
 	at SimpleTest.throwNullPointerException(SimpleTest.java:36) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at SimpleTest.throwAndDontCatchException(SimpleTest.java:71) [file:@CMAKE_BINARY_DIR@/test/SimpleTest.class]
 	at TryFinallyTest.run(TryFinallyTest.java:15) [file:@CMAKE_BINARY_DIR@/test/TryFinallyTest.class]
 	at TryFinallyTest.main(TryFinallyTest.java:27) [file:@CMAKE_BINARY_DIR@/test/TryFinallyTest.class]
+executable: @CMAKE_BINARY_DIR@/test/TryFinallyTest.class
-- 
1.8.3.1