Mein erstes Mal, wenn Sie andere Tests als einfache JUnit Test. Ich habe Arquillian auf einem sehr alten EJB2.0 Ant-Projekt eingerichtet und ich stoße hier auf eine Sackgasse.Arquillian - einige externe Jar Probleme
mit Arquillian ein:
@Deployment
public static Archive<?> createDeployment() {
JavaArchive jar = ShrinkWrap.create(JavaArchive.class)
.addPackages(true, "com.admin", "com.framework", "com.pharmacy")
.addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
EnterpriseArchive ear = ShrinkWrap.create(EnterpriseArchive.class)
.as(ZipImporter.class)
.importFrom(new File("C:\\jboss-4.2.3.GA\\server\\default\\administration.ear"))
.as(EnterpriseArchive.class);
ear.addAsLibrary(jar);
return ear;
}
Ich bin in der Lage, den Behälter zu treffen, um die Datenquelle zu erhalten und die Tabellen abfragen. Wenn ich jedoch einen Test verwende, der Codes verwendet, die von anderen JARs abhängen, oder wenn der Testcode selbst von anderen JARs abhängt, bekomme ich die ClassNotFoundException.
Zum Beispiel in meinem Testfall, ich versuche, eine HTTP-Anforderung mit httpclient-4.5.2.jar
und httpcore-4.4.4.jar
zu machen, dann bin ich Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.apache.http.protocol.HttpContext
innerhalb der Eclipse JUnit-Testkonsole bekommen. Ich habe diese Gläser in meinem Eclipse-Klassenpfad, und es funktioniert, wenn ich denselben HTTP-Test unter Verwendung des Codehaus Cargo-Rahmens führe.
Ein anderes Beispiel, ich initialisiere eine Klasseninstanz, und diese Klasseninstanz macht einen Sftp-Aufruf mit Apache VFS2 Glas. Dann bekomme ich diesen Fehler innerhalb des jboss server.log: Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: org.apache.commons.vfs2.FileSelector
Was mache ich falsch?