Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 369299

Summary: getting java.lang.NoClassDefFoundError: testProbe_probe$Probe_0 in the middle of probing
Product: z_Archived Reporter: Anis Yousefi <yousea2>
Component: TPTPAssignee: Torsten Stolpmann <stolpmann>
Status: ASSIGNED --- QA Contact: Torsten Stolpmann <stolpmann>
Severity: critical    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Anis Yousefi CLA 2012-01-20 16:59:05 EST
Build Identifier: 

I am trying to probe a java application from linux command line using the standalone TPTP probekit agent with the following command:

java '-agentlib:JPIBootLoader=JPIAgent:server=standalone;ProbekitAgent:ext-pk-BCILibraryName=BCIEngProbe,ext-pk-probescript=ome/anis/qf-t/core/probe/testProbe.probescript' junit.textui.TestRunner quickfix.test.acceptance.AcceptanceTestSuite

my application is actually a junit testcase from quickfix/j package provided at: http://www.quickfixj.org/

Running the above command, the probing starts and I am able to see the runtime traces. However, at some point during execution I am getting the runtime exception: java.lang.NoClassDefFoundError: testProbe_probe$Probe_0
...and it hangs!

which is my probe file I created for probing and it has been needed from the start to print out the traces!!???.....

Well, here are some facts:
-I am able to probe other applications, including a simple junit test:

java '-agentlib:JPIBootLoader=JPIAgent:server=standalone;ProbekitAgent:ext-pk-BCILibraryName=BCIEngProbe,ext-pk-probescript=ome/anis/qf-t/core/probe/testProbe.probescript' junit.textui.TestRunner quickfix.test.acceptance.AnisJUnitTestExample

-I am able to run the quickfix.test.acceptance.AcceptanceTestSuite using junit (no probing):

java junit.textui.TestRunner quickfix.test.acceptance.AcceptanceTestSuite

-I have set the path to testProbe_probe$Probe_0 in CLASSPATH

/home/anis/Downloads/junit-4.10.jar:/home/anis/qf-t/core/target/classes/test:/home/anis/qf-t/core/probe:/home/anis/qf-t/core/target/quickfixj-core-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix40-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix41-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix42-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix43-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix44-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fix50-SNAPSHOT.jar:/home/anis/qf-t/core/target/quickfixj-msg-fixt11-SNAPSHOT.jar:/home/anis/qf-t/core/target/classes/test:/home/anis/qf-t/core/src/test/java:/home/anis/qf-t/core/src/main/lib/mina-core-1.1.7-sources.jar:/home/anis/qf-t/core/src/main/lib/mina-core-1.1.7.jar:/home/anis/qf-t/core/src/main/lib/slf4j-api-1.6.3.jar:/home/anis/qf-t/core/src/main/lib/slf4j-jdk14-1.6.3.jar:/home/anis/qf-t/core/src/main/lib/optional/jcl-over-slf4j-1.6.3.jar:/home/anis/qf-t/core/src/main/lib/optional/log4j-1.2.15.jar:/home/anis/qf-t/core/src/main/lib/optional/mina-filter-ssl-1.1.7-sources.jar:/home/anis/qf-t/core/src/main/lib/optional/mina-filter-ssl-1.1.7.jar:/home/anis/qf-t/core/src/main/lib/optional/proxool-0.9.1.jar:/home/anis/qf-t/core/src/main/lib/optional/proxool-cglib.jar:/home/anis/qf-t/core/src/main/lib/optional/sleepycat-je_2.1.30.jar:/home/anis/qf-t/core/src/main/lib/optional/slf4j-log4j12-1.6.3.jar:/home/anis/qf-t/core/src/test/lib/hamcrest-all-1.1.jar:/home/anis/qf-t/core/src/test/lib/hsqldb-1.8.0.jar:/home/anis/qf-t/core/src/test/lib/jsch-0.1.21.jar:/home/anis/qf-t/core/src/test/lib/junit-4.5-src.jar:/home/anis/qf-t/core/src/test/lib/junit-4.5.jar:/home/anis/qf-t/core/src/test/lib/mockito-all-1.4.jar:/home/anis/qf-t/core/src/test/lib/tyrex-1.0.3.jar

-I have called the System.getenv("CLASSPATH") from within my testcase and the CLASSPATH seems to be fine

-I have set the required environment variables such as LD_LIBRARY_PATH, etc

-The testcase deals with threads, sockets, etc

And my system configuration is:
-os: ubuntu 10.04-64bit (on VirtualBox!)
-java version "1.6.0_24"
-junit: junit-4.10.jar
-TPTP agent controller: agntctrl.linux_em64t-TPTP-4.7.2
-quickfixj-1.5.2-bin

Reproducible: Always

Steps to Reproduce:
1.download and install quickfixj-1.5.2, junit-4.10, agntctrl.linux_em64t-TPTP-4.7.2
2. set the required environment variables
3. run the following command on linux command line:
java '-agentlib:JPIBootLoader=JPIAgent:server=standalone;ProbekitAgent:ext-pk-BCILibraryName=BCIEngProbe,ext-pk-probescript=ome/anis/qf-t/core/probe/testProbe.probescript' junit.textui.TestRunner quickfix.test.acceptance.AcceptanceTestSuite

(note: you need to change the paths according to your system)
Comment 1 Torsten Stolpmann CLA 2012-01-21 15:11:12 EST
Assigned for review.