web-dev-qa-db-fra.com

Conversion d'un projet Netbeans en un projet activé par Maven

Comment puis-je convertir un projet généré par Netbeans en acceptant une configuration Maven? Il existe des options pour créer des projets basés sur Maven, mais rien (que j'ai trouvé jusqu'à présent) ne permet d'ajouter des dépendances Maven aux projets existants.

72
monksy

Vous devez créer un projet Maven distinct. Ensuite, vous pouvez copier le code de votre autre projet dans le projet Maven. Cela peut être fait à partir des fenêtres de projets dans NetBeans. 

Il suffit de sélectionner les fichiers/packages de code dans l’arborescence, de cliquer avec le bouton droit de la souris pour les copier, puis de les coller dans les packages source de votre nouveau projet Maven.

Ensuite, ouvrez les fichiers que Maven ne compilera pas car ils manquent de dépendances. L'ampoule jaune à gauche de la ligne problématique vous donnera des options pour rechercher les dépendances manquantes et les ajouter à votre projet. Vous devez être en ligne pour effectuer des recherches.

Vous pouvez également ajouter des dépendances Maven manuellement dans votre nouveau projet Maven en cliquant avec le bouton droit de la souris sur le dossier des dépendances dans les fenêtres Projets.

60

Si vous êtes familier avec maven, vous pouvez toujours configurer maven même ultérieurement. Cependant, cela n’est pas recommandé.

la seule raison derrière les personnes (y compris moi;)) recommande de créer un nouveau projet Maven, c'est que Maven a sa propre structure de répertoires. Et c'est la norme. maintenant, si vous souhaitez activer maven pour votre projet ultérieurement, vous pouvez configurer les éléments dans pom.xml, c’est-à-dire votre répertoire source, votre répertoire cible et votre répertoire d’applications Web (le cas échéant).

J'avais un grand projet dans SVN et je n'avais pas le droit de créer un nouveau projet. Je ne voulais pas prendre en charge la gestion des bibliothèques et j'ai donc configuré maven en fonction de la structure de mon répertoire.

voici la partie de mon pom.xml

    <build>
    <sourceDirectory>src</sourceDirectory>
    <testSourceDirectory>testpackages</testSourceDirectory>
    <testOutputDirectory>target/test-classes</testOutputDirectory>
    <plugins>
        <plugin>
            <version>2.3.2</version>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <configuration>
                <failOnMissingWebXml>false</failOnMissingWebXml>
                <webResources>
                    <resource>
                        <!-- this is relative to the pom.xml directory -->
                        <directory>web-root</directory>
                    </resource>
                </webResources>
            </configuration>
        </plugin>
15
Tejas

Je suis cette étape pour mon application Java de bureau

1) ouvrez votre projet dans Eclipse (en accédant à un nouveau projet et en accédant à votre projet), l’importation de projet ne fonctionnera pas

2) Activer maven pour ce projet 

3) ajouter une bibliothèque de dépendances

4) fermez votre projet

5) supprimer le dossier NBProject et le fichier Build.xml de l’emplacement du projet (sinon, netbeans ne pourra pas le reconnaître en tant que projet maven)

6) ouvrir ce projet de netbeans

sauvegardez votre projet avant de le faire

8
Harsh kurra

J'ai découvert par accident la raison pour laquelle Netbeans 8.2. ouvre des projets en tant que projets Netbeans au lieu de projets Maven; Après avoir supprimé les fichiers Netbeans et Ant spécifiques, vous les avez remplacés par le pom correctement formé.

Netbeans semble mettre en cache les types de projet pour les projets déjà ouverts, ceci peut être résolu en supprimant ledit cache.

Windows est situé ici:

C:\Users\${username}\AppData\Local\NetBeans\Cache

Linux ici:

~/.cache/netbeans/${netbeans_version}/index/

Mac ici:

~/Library/Caches/NetBeans/${netbeans_version}/

0
Kat

Amélioration de la réponse de @JVerstry. J'ajoute Une autre solution inexpliquée ici par étapes.

Créez un nouveau projet Maven dans Netbeans. Copiez ensuite collez votre code source dans votre dossier maven. Cela peut être fait dans la vue de projets Netbeans IDE lui-même. Après cela, suivez ces étapes.

  1. Ajoutez des dépendances SPRING MVC. 
  2. Ajoutez la version Spring MVC à votre section properties (dépend du point 1) 
  3. Configurez dispatcher-servlet.xml et web.xml dans votre dossier Spring. 
  4. Reste à faire quelques correspondances et la configuration de votre contrôleur principal et JSP/HTML-Page., 
  5. vérifiez votre page d'accueil en cours d'exécution.

Point 1 :

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>${spring.version}</version>
</dependency>

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-web</artifactId>
   <version>${spring.version}</version>
</dependency>

<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-webmvc</artifactId>
   <version>${spring.version}</version>
</dependency>

Point 2 : et ajoutez spring.version à votre section propriétés

<properties>
    <spring.version>4.0.2.RELEASE</spring.version>
</properties>

Point 3 : Sous Dossier WEB-INF , créez un fichier nommé dispatcher-servlet.xml . Ouvrez le fichier et copiez le code suivant.

<?xml version="1.0" encoding="UTF-8"?>
   <beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:context="http://www.springframework.org/schema/context"
   xmlns:mvc="http://www.springframework.org/schema/mvc"
   xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">

<mvc:annotation-driven />
<context:component-scan base-package="com.youbequityweb.controllers" />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>
</beans>

Ledéclare que MVC est géré par les annotations de support, à l'aide de @Controller, @Service, @Component.

Lesignifie analyser les classes de ce paquet de base pour déterminer toutes les classes de beans.

Le résolveur de vues spécifie les emplacements de nos vues (jsp) et de l'extension . Dans votre web.xml , ajoutez les configurations de ressort à l'intérieur de la section web-app .

<!--Spring Config-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
</context-param>
<listener>    <listenerclass>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-  class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

Point 4 : C’est délicat, liez maintenant votre contrôleur principal existant au paquet de base défini dans dispatcher-servlet.xml . par exemple: HomeController.Java indiqué ci-dessous.

package com.youbequityweb.controllers;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class HomeController {

@RequestMapping(value="/home", method = RequestMethod.GET)
    public String viewHome(){
    return "home";
    }
}

Point 5 : Dans NetBeans , maintenant un clic droit, choisissez nettoyer et construire, éloignez-vous des avertissements et des conflits éventuels et exécutez votre application spring mvc pour obtenir des résultats.

0
NadZ