J'ai clone le code flink de github, et l'ouvre avec Intellij Idea, je n'ai fait aucune configuration dans IJ ou dans le code (j'ai déjà installé le plugin IJ scala et installé scala sdk), je vais directement courir les deux exemples suivants dans Intellij Idea
Je suis capable d'exécuter avec succès l'exemple de Word Count en mode batch (Le code est la classe org.apache.flink.examples.scala.wordcount.WordCount dans flink-examples-batch_2. 11
module).
Mais quand j'essaie d'exécuter l'exemple de streaming Word Count (Le code est la classe org.apache.flink.streaming.scala.examples.wordcount.WordCount dans le module flink-examples-streaming_2.11
), j'ai eu beaucoup d'erreurs de compilation:
Error:(30, 30) object streaming is not a member of package org.apache.flink.test import org.apache.flink.test.streaming.runtime.util.TestListResultSink Error:(46, 36) not found: type TestListResultSink val sideOutputResultSink = new TestListResultSink[String] Error:(47, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[Int] Error:(82, 36) not found: type TestListResultSink val sideOutputResultSink = new TestListResultSink[String] Error:(83, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[Int] Error:(119, 36) not found: type TestListResultSink val sideOutputResultSink = new TestListResultSink[String] Error:(120, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[Int] Error:(152, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[String] Error:(153, 30) not found: type TestListResultSink val lateResultSink = new TestListResultSink[(String, Int)] Error:(196, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[String] Error:(197, 30) not found: type TestListResultSink val lateResultSink = new TestListResultSink[(String, Int)] Error:(242, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[String] Error:(243, 36) not found: type TestListResultSink val sideOutputResultSink = new TestListResultSink[String] Error:(289, 26) not found: type TestListResultSink val resultSink = new TestListResultSink[String] Error:(290, 36) not found: type TestListResultSink val sideOutputResultSink = new TestListResultSink[String]
3 Réponses :
Si je recherche TestListResultSink
sur GitHub.com, je le trouve ici . Cela me montre que c'est dans le module flink-tests
. L'avez-vous inclus dans votre configuration IntelliJ?
Merci @kkrugler. Oui, j'ai la classe, quand je clone le dépôt, tout est récupéré dans ma machine locale.
J'ai finalement lancé org.apache.flink.examples.scala.wordcount.WordCount
dans IntelliJ, mais ce n'était pas facile. J'ai essayé un tas de choses, mais je pense que c'est le chemin qui a conduit au succès:
mvn clean package -DskipTests
org.apache.flink.examples.scala.wordcount.WordCount
et org.apache.flink.streaming.scala.examples.wordcount.WordCount
li >
FWIW, les versions binaires Flink sont livrées avec des fichiers jar pour certains des exemples, qui peuvent être exécutés sur un cluster sans avoir à compiler quoi que ce soit. C'est un moyen plus simple de faire fonctionner quelque chose. Les détails sont ici .
Merci @David. Je suis également capable d'exécuter org.apache.flink.examples.scala.wordcount.WordCount
sans aucune configuration spéciale après avoir ouvert le projet dans IJ. Le problème que j'ai mentionné dans la question concerne l'exécution du nombre de mots en mode streaming: org.apache.flink.streaming.scala.examples.wordcount.WordCoun t
Désolé, j'ai croisé mes fils, @Tom, mais je suis également capable d'exécuter org.apache.flink.streaming.scala.examples.wordcount.WordCoun t maintenant que j'ai nettoyé et construit le projet comme décrit ci-dessus.
essayez de créer votre projet, puis exécutez l'exemple wordcount!
Paquet propre mvn -DskipTests
Quelqu'un pourrait-il aider à jeter un coup d'œil? Merci