web-dev-qa-db-fra.com

Exécuter Vertx dans un IDE

Existe-t-il un moyen d'exécuter Vertx à partir d'un IDE? Je sais que je peux créer un serveur dans un fichier, puis appeler 

vertx run server.Java

à partir de la ligne de commande, mais existe-t-il un moyen d'exécuter le fichier server.Java à partir d'un IDE?

14
j will
  • créer un projet maven comme le dit le manuel .

  • Importez ensuite le projet en tant que projet Maven

  • Créer un nouveau lanceur (Eclipse) en utilisant comme classe principale 

    • Pour Vert.x 2.x: " org.vertx.Java.platform.impl.cli.Starter "
    • Pour Vert.x 3.x: " io.vertx.core.Starter "
  • Dans l'onglet "Arguments du programme", tapez: " lancez votre.package.ServerVerticle -conf conf.json "

Vous pouvez omettre le conf.json si vous n'en avez pas, c'est juste un exemple pour vous montrer que vous pouvez y mettre toute autre option en lançant Vert.x à partir de la ligne de commande.

CONSEIL PRO: si votre point est écrit dans une autre langue, utilisez le préfixe avec le nom de la langue comme suit:

  • " scala: com.acme.MainVerticle -conf conf.json "
  • " lancez jython: MainVerticle.py -conf conf.json "
  • " lancez jruby: MainVerticle.rb -conf conf.json "
  • " lancez rhino: MainVerticle.js -conf conf.json "
  • " run groovy: MainVerticle.groovy -conf conf.json "

Et ainsi de suite.

28
sscarduzio

La réponse acceptée convient parfaitement. Juste pour compléter, vous pouvez également exécuter une ancienne classe principale Java simple, en démarrant votre instance vertx.

Le code devrait être quelque chose comme:

public static void main(final String... args) {
    Vertx vertx = Vertx.vertx();
    vertx.deployVerticle(/* put your stuff here */);
}

Voilà.

14
Psyx

Vert.x 3

J'ai précédemment édité une réponse précédente, mais je la sépare par souci de clarté.

L'exemple ci-dessous concerne Eclipse, mais le même principe de base devrait fonctionner avec n'importe quel environnement de développement intégré.

Installer

  • Configurez votre Maven , Gradle ou un autre projet et importez-le dans Eclipse.

  • Créez une exécution ou débogage config et définissez io.vertx.core.Launcher comme classe principale.

  • Dans l'onglet arguments, définissez le arguments du programme: run org.example.InitVerticle -conf <path to config>; où org.example.InitVerticle est votre vertical ou intialiser. 

Débogage

Lors du débogage dans Vert.x 3, vous remarquerez peut-être qu'un surveillant de threads bloqué émet en continu des avertissements (et éventuellement des exceptions) sur la console. Bien qu'utile pendant la production, vous pouvez empêcher ce comportement en définissant la propriété suivante dans VM arguments de votre configuration de débogage:

-Dvertx.options.blockedThreadCheckInterval=2147483647

Sachez que votre débogage est susceptible de déclencher des délais d'attente dans divers scénarios, tels qu'un point d'arrêt retardant une réponse sur Eventbus. Vous verrez des avertissements comme:

WARNING: Message reply handler timed out as no reply was received - it will be removed

Clairement, cela pourrait signifier des flux de contrôle sous débogage différents de ceux d'une exécution réelle si vous ne faites pas attention. 

8
Marc Savy

Mon réglage ci-dessous est fait à IntelliJ 15.0.1 avec vert.x 3.2.0 pour Java

  1. téléchargez et extrayez la bibliothèque vertx ( http://vertx.io/download/ ) vers quelque part
  2. dans IntelliJ, 'Nouveau projet' -> sélectionnez Java et Project SDK 1.8 -> Suivant
  3. cocher 'Créer un projet à partir d'un modèle' et 'Application de ligne de commande' -> Suivant
  4. saisissez le nom du projet que vous souhaitez -> Terminer
  5. 'Fichier' -> 'Structure du projet ...' -> sélectionnez 'Bibliothèques'
  6. '+' (Nouvelle bibliothèque de projets) -> 'Java' -> ajouter (Quelque part) /vert.x-3.2.0-full/lib -> 'OK'
  7. ajouter Nouveau Verticle comme:

    public class HiVerticle extends AbstractVerticle {
    @Override
    public void start() throws Exception {
        super.start();
        System.out.println("Hi");
    }}
    
  8. 'Run' -> 'Edit Configurations ...' -> remplacez 'Main class:' par ' io.vertx.core.Launcher ', 

    input ' exécuter cchcc.hi.HiVerticle ' à 'Arguments du programme:' -> 'OK'

  9. Exécuter et déboguer!

résultat

4
cchcc

Je suggérerais ce que Fran a déjà laissé entendre. Le mieux est de créer votre projet Maven à partir de l’archétype ( http://vertx.io/maven_dev.html ) tel que

mvn archetype:generate -Dfilter=io.vertx: -DgroupId=your.group.id -DartifactId=your-artifact -Dversion=0.0.1-SNAPSHOT

et ajoutez les spécificités IDE via maven, par exemple pour Eclipse

mvn Eclipse:eclipse

Vous avez ainsi un projet prêt à importer et à utiliser dans Eclipse.

Pour commencer, je ne choisirais pas directement un Verticle principal ou de démarrage, mais simplement le lancer dans Maven dans Eclipse en tant que nouvelle configuration d'exécution. Créer une nouvelle configuration d'exécution Maven et la définir comme objectifs

clean compile vertx:runMod

Il démarrera la classe "Main" mod.json configurée.

Remarque: clean compile n'est pas nécessaire, mais si vous le construisez une fois et que vous avez installé les fichiers JAR de votre projet, le déploiement automatique ne fonctionne plus car il sélectionne la construction au lieu du code développé.

Ainsi, vous avez l'exemple PingVerticle en cours d'exécution et vous pouvez également vous amuser, car le redéploiement automatique est activé dans mod.json .

Si vous avez ensuite besoin de plus d’informations, de configurations, etc., vous pouvez utiliser les verticules de démarrage, les paramètres ou même l’ajouter au plugin pom.xml vertx-maven.

J'espère que ça aide.

Meilleur

4
INsanityDesign

Si vous recherchez des options autres que la création d'un projet maven (suggéré dans les autres réponses), vous pouvez procéder comme suit:

  • Téléchargez la dernière version de http://vertx.io/downloads.html
  • Décompressez-le et ajoutez tous les fichiers JAR du dossier lib à la bibliothèque de votre projet, ajoutez-le à votre chemin de classe.
  • Créez une configuration d'exécution pour votre projet avec org.vertx.Java.platform.impl.cli.Starter en tant que classe principale.
  • Ajoutez exécutez votre.package.Server -cp $ {project_loc:/VotreProjet}/bin comme arguments de votre configuration d’exécution. 
  • Exécutez votre projet en utilisant la configuration d'exécution nouvellement créée!
1
nachi