Note: Je suis nouveau à jouer cadre, s'il vous plaît pardonnez-moi pour toute erreur recrue.mailerclient non détecté par playframework
Infos Contexte:
Dans mon webapp, je fais usage de la fonctionnalité de messagerie, et cela se fait à l'aide du MailerClient fourni comme une bibliothèque de SBT.
MailerClient est pris en charge sur la page github this. J'utilise github comme référentiel git, car il s'agit d'un projet d'équipe.
J'ai d'abord créé le projet et l'ai poussé vers le référentiel, voici le début du problème.
Instructions pour Email Support (JAVA) (En tant que référence de mes pas prises)
Tout d'abord, pour permettre le soutien de courrier électronique pour Java, quelques étapes doivent être prises.
1. Ajouter SBT bibliothèque MailerClient
Ajouter les lignes
libraryDependencies += "com.typesafe.play" %% "play-mailer" % "6.0.1"
libraryDependencies += "com.typesafe.play" %% "play-mailer-guice" % "6.0.1"
au fichier projectRoot/build.sbt
2. Configurer MailerClient
Configurez ensuite les MailerClient
ports, etc en le fichier projectRoot/conf/application.conf
exemple donné sur la page GitHub:
play.mailer {
host = "example.com" // (mandatory)
port = 25 // (defaults to 25)
ssl = no // (defaults to no)
tls = no // (defaults to no)
tlsRequired = no // (defaults to no)
user = null // (optional)
password = null // (optional)
debug = no // (defaults to no, to take effect you also need to set the log level to "DEBUG" for the application logger)
timeout = null // (defaults to 60s in milliseconds)
connectiontimeout = null // (defaults to 60s in milliseconds)
mock = no // (defaults to no, will only log all the email properties instead of sending an email)
}
est à moi au bas du fichier application.conf
car il ne fait pas partie d'un autre préfixe d'arbre.
3. Passez à la balise Java Usage
4. A l'intérieur d'une classe (de votre choix), ajoutez le code:
@Inject
MailerClient mailerClient;
Au sein de cette classe, l'objet est instancié MailerClient
et peut être utilisé pour envoyer des emails.
Avec l'exemple de la page Github, créez l'objet email
:
String cid = "1234";
Email email = new Email()
.setSubject("Simple email")
.setFrom("Mister FROM <[email protected]>")
.addTo("Miss TO <[email protected]>")
// adds attachment
.addAttachment("attachment.pdf", new File("/some/path/attachment.pdf"))
// adds inline attachment from byte array
.addAttachment("data.txt", "data".getBytes(), "text/plain", "Simple data", EmailAttachment.INLINE)
// adds cid attachment
.addAttachment("image.jpg", new File("/some/path/image.jpg"), cid)
// sends text, HTML or both...
.setBodyText("A text message")
.setBodyHtml("<html><body><p>An <b>html</b> message with cid <img src=\"cid:" + cid + "\"></p></body></html>");
ensuite envoyer l'e-mail en utilisant le mailerClient
:
mailerClient.send(email);
Problème:
Après avoir vérifié o dans ma branche (c.-à-d. il tire le projet webapp de github), PlayFramework n'a pas détecté le MailerClient
.
Je peux confirmer que le fait MailerClient travail (a été détectée, instancié, envoie un courrier électronique, etc.) comme il l'a fait avant de pousser à github, et aucun changement n'a été fait depuis.
Pour clarifier, c'est un problème avec le plugin/bibliothèque n'étant pas détecté.
Vérification pour voir si elle existe réellement:
09:15:08 ✔ [email protected] ~/.ivy2 $ find | grep mailer
./cache/com.typesafe.play/play-mailer_2.12
./cache/com.typesafe.play/play-mailer_2.12/ivy-6.0.1.xml.original
./cache/com.typesafe.play/play-mailer_2.12/ivydata-6.0.1.properties
./cache/com.typesafe.play/play-mailer_2.12/ivy-6.0.1.xml
./cache/com.typesafe.play/play-mailer_2.12/jars
./cache/com.typesafe.play/play-mailer_2.12/jars/play-mailer_2.12-6.0.1.jar
./cache/com.typesafe.play/play-mailer_2.12/srcs
./cache/com.typesafe.play/play-mailer_2.12/srcs/play-mailer_2.12-6.0.1-sources.jar
./cache/com.typesafe.play/play-mailer-guice_2.12
./cache/com.typesafe.play/play-mailer-guice_2.12/ivy-6.0.1.xml.original
./cache/com.typesafe.play/play-mailer-guice_2.12/ivydata-6.0.1.properties
./cache/com.typesafe.play/play-mailer-guice_2.12/ivy-6.0.1.xml
./cache/com.typesafe.play/play-mailer-guice_2.12/jars
./cache/com.typesafe.play/play-mailer-guice_2.12/jars/play-mailer-guice_2.12-6.0.1.jar
./cache/com.typesafe.play/play-mailer-guice_2.12/srcs
./cache/com.typesafe.play/play-mailer-guice_2.12/srcs/play-mailer-guice_2.12-6.0.1-sources.jar
Lors du lancement de l'outil de SBT, il ne résout les mailer plugin
//...
[info] Resolving com.typesafe.play#play-mailer_2.12;6.0.1 ...
[info] Resolving org.apache.commons#commons-email;1.5 ...
[info] Resolving com.sun.mail#javax.mail;1.5.6 ...
[info] Resolving javax.activation#activation;1.1 ...
[info] Resolving com.typesafe.play#play-mailer-guice_2.12;6.0.1 ...
//...