SOUDURE-001408 dépendances non satisfaites de type [Enregistreur] avec des qualificatifs [@Default] au point d'injection de [[champ] à l'aide de arquillian
Je suis en cours d'exécution de base arquillian de test de l'unité, à l'aide de la Greeter exemple sur le arquillian site. La seule différence est que suis en train de faire un journal.debug dans le salue(PrintStream à, String nom) fonction Greeter.java. Am à l'aide de slf4j pour la journalisation.
Greeter.java
package org.arquillian.example;
import java.io.PrintStream;
import javax.inject.Inject;
import org.slf4j.Logger;
public class Greeter {
@Inject
private Logger log;
public void greet(PrintStream to, String name) {
log.debug("Greeter Testing");
to.println(createGreeting(name));
}
public String createGreeting(String name) {
return "Hello, " + name + "!";
}
}
GreeterTest.java
package org.arquillian.example;
import javax.inject.Inject;
import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
@RunWith(Arquillian.class)
public class GreeterTest {
@Inject
Greeter greeter;
@Deployment
public static JavaArchive createDeployment() {
return ShrinkWrap.create(JavaArchive.class)
.addClass(Greeter.class)
.addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
}
@Test
public void should_create_greeting() {
Assert.assertEquals("Hello, Earthling!",
greeter.createGreeting("Earthling"));
greeter.greet(System.out, "Earthling");
}
}
Suis à SOUDER 001408 dépendances non satisfaites de type [Enregistreur] avec des qualificatifs [@Default] au point d'injection de [[champ] @Inject privé org.arquillian.exemple.Greeter.le journal] erreur lors de l'exécution de l'essai. Quelqu'un peut s'il vous plaît aider sur ce point?
Vous devez vous connecter pour publier un commentaire.
C'est un CDI question. Vous n'avez pas de producteur pour votre
Logger
en premier lieu.Deuxièmement, tout producteur doit être ajouté à la ShrinkWrap de déploiement.
D'un producteur pour l'Enregistreur de données est généralement écrit en tant que tel:
Ce producteur reçoit un point d'injection et des produits pour retourner un SLF4J
Logger
instance. L'instance a le même nom que la classe contenant le point d'injection.également changer en bean.xml bean-découverte-mode pour tous les
Au lieu de l'injection de l'Enregistreur, il a très bien fonctionné pour moi quand je LoggerFactory.
Dans mon cas, je dois fournir les injections par programme
D'importation:
Initialisation