Я какое-то время имел дело с этим сообщением об ошибке, и никто не смог мне помочь ...
Я пытаюсь проверить приложение Java с помощью автономного агента пробэкита TPTP с помощью следующегокоманда linux:
java '-agentlib: JPIBootLoader = JPIAgent: сервер = автономный; ProbekitAgent: ext-pk-BCILibraryName = BCIEngProbe, ext-pk-probescript = ome / anis / qf-t / core/probe/testProbe.probescript 'junit.textui.TestRunner quickfix.test.acceptance.AcceptanceTestSuite
Мое приложение на самом деле представляет собой тестовый пример junit из пакета Quickfixj (quickfixj.org) ...
При выполнении вышеупомянутой команды начинается зондирование, и я могу видеть трассировки во время выполнения.Однако в какой-то момент во время выполнения я получаю исключение времени выполнения:
java.lang.NoClassDefFoundError: testProbe_probe $ Probe_0
25-Jan-2012 10:25:11 AM quickfix.test.acceptance.ATServer run
SEVERE: error in AT server
java.lang.NoClassDefFoundError: testProbe_probe$Probe_0
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl.<init>(DocumentBuilderFactoryImpl.java)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at javax.xml.parsers.FactoryFinder.newInstance(FactoryFinder.java:147)
at javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:233)
at javax.xml.parsers.DocumentBuilderFactory.newInstance(DocumentBuilderFactory.java:123)
at quickfix.DataDictionary.load(DataDictionary.java:906)
at quickfix.DataDictionary.read(DataDictionary.java:893)
at quickfix.DataDictionary.<init>(DataDictionary.java:109)
at quickfix.DefaultSessionFactory.getDataDictionary(DefaultSessionFactory.java:325)
at quickfix.DefaultSessionFactory.createDataDictionary(DefaultSessionFactory.java:219)
at quickfix.DefaultSessionFactory.processFixtDataDictionaries(DefaultSessionFactory.java:258)
at quickfix.DefaultSessionFactory.create(DefaultSessionFactory.java:113)
at quickfix.mina.acceptor.AbstractSocketAcceptor.createSessions(AbstractSocketAcceptor.java:242)
at quickfix.mina.acceptor.AbstractSocketAcceptor.startAcceptingConnections(AbstractSocketAcceptor.java:99)
at quickfix.SocketAcceptor.initialize(SocketAcceptor.java:66)
at quickfix.SocketAcceptor.start(SocketAcceptor.java:59)
at quickfix.test.acceptance.ATServer.run(ATServer.java:193)
at java.lang.Thread.run(Thread.java:662)**
, в котором говорится, что мой файл зондапропал, отсутствует.Но этот файл был необходим в первую очередь для печати следов !! ??? .....
Ну вот несколько фактов:
IЯ могу исследовать другие приложения, включая простой тест junit:
java '-agentlib: JPIBootLoader = JPIAgent: сервер = автономный; ProbekitAgent: ext-pk-BCILibraryName = BCIEngProbe, ext-pk-probescript= ome / anis / qf-t / core / probe / testProbe.probescript 'junit.textui.TestRunner quickfix.test.acceptance.AnisJUnitTestExample
Я могу запуститьquickfix.test.acceptance.AcceptanceTestSuite с использованием junit (без проверки):
java junit.textui.TestRunner quickfix.test.acceptance.AcceptanceTestSuite
Я установил путь к testProbe_probe $ Probe_0 в CLASSPATH
Я вызвал System.getenv ("CLASSPATH") изнутри моего тестового примера, и CLASSPATH, кажется, в порядке
Мой тестовый случай связан с потоками, сокетами и т. Д.
И моя конфигурация системы:
-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
Есть идеи ??
Спасибо, Анис