87 votes

Comment créer un projet Java / Maven qui fonctionne dans Visual Studio Code ?

J'essaie de créer un projet maven - de façon à pouvoir compiler les fichiers Java dans le dossier racine et sortir les fichiers de classe dans un autre dossier.

J'ai déjà téléchargé mvn.

J'essaie de l'intégrer à VS Code. Mon objectif est d'éditer les fichiers java dans VS Code et, lors de la sauvegarde, le compilateur enregistre le fichier .class dans le dossier de sortie approprié.

C'est tout - pas de fichiers war ou jar.

Une aide ?

0 votes

Avez-vous installé le Pack d'extension Java ? La documentation de votre éditeur suggère de l'utiliser pour supporter Java. J'espère qu'une fois qu'il sera installé, vous n'aurez plus à vous embêter avec maven pour compiler votre code.

131voto

Steve Chambers Points 3303

Voici une liste complète des étapes - il se peut que vous n'ayez pas besoin des étapes 1 à 3, mais je les inclus par souci d'exhaustivité : -.

  1. Télécharger VS Code et Apache Maven et installer les deux.

  2. Installez le pack d'extension Visual Studio pour Java - par exemple en collant cette URL dans un navigateur Web : vscode:extension/vscjava.vscode-java-pack puis en cliquant sur le bouton vert Installer après son ouverture dans VS Code.

  3. NOTE : Voir le commentaire de l'ADTC pour une "Version GUI plus facile de l'étape 3... (Sauter l'étape 4)". Si nécessaire, l'archétype de démarrage rapide Maven peut être utilisé pour générer un nouveau projet Maven dans un dossier local approprié : mvn archetype:generate -DgroupId= com.companyname.appname -DartifactId= nom de l'application -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false . Cela créera un nom de l'application avec le dossier de Maven Mise en page standard du répertoire (c'est-à-dire src/main/java/com/companyname/appname et src/main/test/com/companyname/appname pour commencer et un exemple de fichier Java "Hello World ! nommé nom de l'application .java et le test unitaire associé nommé nom de l'application Test.java ).*

  4. Ouvrez le dossier du projet Maven dans VS Code via le menu Fichier -> Ouvrir le dossier... et sélectionnez l'élément nom de l'application dossier.

  5. Ouvrez la palette de commande (via le menu Affichage ou en cliquant avec le bouton droit de la souris), tapez et sélectionnez Tasks: Configure task puis sélectionnez Create tasks.json from template .

  6. Choisissez maven ("Execute common Maven commands"). Cela crée un fichier tasks.json avec les tâches "verify" et "test". D'autres peuvent être ajoutées correspondant à d'autres Cycle de vie de la construction Maven phases. Pour répondre spécifiquement à votre exigence que les classes soient construites sans fichier JAR, une tâche de "compilation" devrait être ajoutée comme suit :

    {
        "label": "compile",
        "type": "shell",
        "command": "mvn -B compile",
        "group": "build"
    },
  7. Enregistrez les modifications ci-dessus, puis ouvrez la palette de commande et sélectionnez "Tasks : Run Build Task", puis choisissez "compile" et ensuite "Continue without scanning the task output". Ceci invoque Maven, qui crée un fichier target au même niveau que le dossier src avec les fichiers de classe compilés dans le dossier target\classes dossier.


Addendum : Comment exécuter/déboguer une classe

Suite à une question dans les commentaires, voici quelques étapes pour l'exécution/débogage :-.

  1. Afficher la vue de débogage si elle n'est pas déjà affichée (via le menu Affichage - Débogage ou CtrlShiftD ).
  2. Cliquez sur la flèche verte dans la vue Debug et sélectionnez "Java".
  3. En supposant qu'il n'a pas déjà été créé, un message "launch.json est nécessaire pour démarrer le débogueur. Voulez-vous le créer maintenant ?" apparaît - sélectionnez "Oui", puis sélectionnez à nouveau "Java".
  4. Saisissez le nom entièrement qualifié de la classe principale (par exemple, le nom de l'utilisateur). com.companyname.appname.App ) dans la valeur de "mainClass" et enregistrez le fichier.
  5. Cliquez à nouveau sur la flèche verte dans la vue Debug.

0 votes

Merci - j'ai réussi à faire fonctionner ce qui précède. Deux petites questions : il semble qu'un nom de paquet soit nécessaire. Est-il possible d'en créer un sans nom de paquet et/ou d'avoir plus de contrôle sur la structure du dossier ? De même, si j'ai un fichier java dans l'éditeur, comment l'exécuter ?

0 votes

Je ne suis pas sûr d'avoir bien compris la première partie de votre question - voulez-vous dire que vous voulez avoir une classe sans nom de package explicitement spécifié, c'est-à-dire dans le package par défaut ? La structure de dossier de Maven est assez standard - je ne vois pas pourquoi vous ne voudriez pas l'utiliser et c'est en dehors du domaine de tout ce que j'ai essayé auparavant mais il y a plus d'informations ici si cela peut aider : maven.apache.org/guides/mini/ . Re : Deuxième partie de votre question J'ai ajouté quelques étapes pour exécuter une classe qui devrait pour fonctionner, alors que ce n'était pas le cas dans ma configuration (peut-être un problème de pare-feu).

0 votes

Le problème est que j'ai quelques anciens projets et qu'ils n'ont pas de nom de projet - je sais bien. J'ai décidé de m'en tenir à Eclipse pour le moment - mais j'apprécie votre réponse détaillée - peut-être pour un nouveau projet.

10voto

53c Points 70

Une autre solution consiste à installer le Maven for Java et créer un projet maven dans Visual Studio. Les étapes sont décrites dans la documentation officielle :

  1. Dans la palette de commande (Crtl+Shift+P), sélectionnez Maven : Generate from Maven Archetype et suivez les instructions, ou bien
  2. Cliquez avec le bouton droit de la souris sur un dossier et sélectionnez Generate from Maven Archetype.

1voto

Chidozie Nnachor Points 108

Ce n'est pas une réponse particulièrement bonne car elle explique comment exécuter votre code java dans VS Code et pas nécessairement une réponse à la question de savoir si vous avez besoin de l'aide d'une autre personne. Maven mais cela a fonctionné pour moi car je n'ai pas eu le temps de faire la configuration manuelle moi-même. J'ai décidé d'utiliser cette méthode à la place, car elle est plus facile et plus rapide.

Installez VSCode (et pour Windows, définissez vos variables d'environnement), puis installez vscode:extension/vscjava.vscode-java-pack comme détaillé ci-dessus, et ensuite installer le générateur de code qui met en place l'ensemble du processus (en arrière-plan) comme expliqué dans la réponse acceptée ci-dessus, puis fournit un bouton de lecture pour exécuter votre code Java lorsque vous êtes prêt.

Tout cela a été expliqué dans ce vidéo .

Encore une fois, ce n'est pas la meilleure solution, mais si vous voulez aller droit au but, vous trouverez peut-être cette réponse utile.

1voto

Sundar Rajan Points 140

Je suis surpris que personne n'ait mentionné cette approche simple et possible dans Visual Studio Code.

Installer VS Code et Apache maven ( comme mentionné par @Steve Chambers)

Après avoir installé cette extension vscode:extension/vscjava.vscode-java-pack

Dans la page d'aperçu de Java, il y a une option qui se lit 'Create Maven Project' qui mène à un assistant simple pour générer un projet Maven.

C'est assez rapide et assez intuitif, même les débutants peuvent très bien commencer avec un projet Maven.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X