Question

Mon organisation a pris la décision à un niveau supérieur de passer à maven en tant qu'outil de génération standard pour les projets Java. J'ai été chargé d'aider nos équipes locales à migrer leurs projets vers maven.

L'un des principaux outils en jeu est l'IDE MyEclipse. MyEclipse semble avoir eu un "amusement" historique avec l'équipe maven sous la forme démontré dans plusieurs lieux , en particulier lorsque traiter des projets de guerre. Je n'ai pas encore rencontré de problèmes avec de simples projets de bocaux.

Après avoir combattu avec MyEclipse et échoué à reconnaître facilement un projet de guerre, la question est de savoir si MyEclipse en vaut la peine pour développer des applications de guerre maven.

Si tel est le cas, existe-t-il un moyen de faire en sorte que MyEclipse joue bien avec un projet de guerre que je n'ai pas encore trouvé? Ou bien suis-je simplement mieux de suggérer qu'il est temps d'utiliser l'édition Eclipse Java EE avec m2eclipse?

Était-ce utile?

La solution

Je travaille en tant que responsable technique et nous avons récemment commencé à passer à maven. J'ai eu quelques problèmes à obtenir que Maven travaille avec myeclipse. Tout d’abord, même si j’ai activé toutes les fonctions m2eclipse " case à cocher, je ne pouvais toujours pas extraire un projet en tant que projet maven, de Subversion. Cette option (que vous obtenez de m2eclipse) n'était tout simplement pas disponible.

De plus, certaines des préférences que vous obtenez avec m2eclipse ne sont pas disponibles avec maven4myeclipse.

Enfin, je ne pouvais pas simplement désinstaller le plug-in maven4eclipse et installer m2eclipse. Cela aurait été une solution de contournement acceptable.

Je pense que Genutec a essayé de rendre Maven plus accessible aux débutants, mais l’implémentation pose quelques problèmes et je ne les vois pas résolus d’ici peu. Pour nous, cela déléguera probablement MyEclipse à n'être qu'un éditeur jsp sophistiqué.

Autres conseils

Non. MyEclipse ne prend pas en charge les projets créés en dehors de celui-ci. Il est conçu uniquement avec des projets créés à l’aide de ses assistants.

Extrait du Utilisation de Maven dans la présentation de MyEclipse

  

REMARQUE: Maven n'est pris en charge que pour les nouveaux projets. Migration d'existant   les projets associés aux projets Maven n'est pas prise en charge pour le moment, mais   peut être envisagé pour une version ultérieure. Actuellement, l’équipe MyEclipse est   axé sur la fourniture aussi fluide d’une nouvelle expérience de projet Maven   possible

Mike,

Désolé d'entendre que vous combattez MyEclipse et Maven. Dans le passé, le problème le plus courant que j'ai rencontré causait des problèmes dans cette zone était le fait que la racine Web, les répertoires de source Java ou les répertoires de ressources ne soient pas correctement définis.

Utilisation de cette page Web à titre de référence pour un projet Web Maven2 standard mise en page, vous pouvez facilement créer un projet Web MyEclipse activé par Maven. Les étapes à suivre sont les suivantes:

  1. Fichier > Nouveau > Projet Web
  2. Donnez un nom à votre projet, utilisez le répertoire source Java "src / main / java". et une racine Web de "src / main / webapp", cochez le niveau de spécification Java EE souhaité, cochez la case "Ajouter un support Maven". et cochez la case Terminer (à moins que vous ne souhaitiez configurer les identifiants d'artefact / groupe).
  3. Maintenant, si c'est la première fois que vous utilisez Maven4MyEclipse, la préparation de votre référentiel local et la récupération de toutes les ressources Java EE pour la construction de votre projet seront nombreuses, mais après cela, vous devriez être prêt.
  4. Vous pouvez exécuter les cibles Maven à l'aide du menu contextuel Exécuter en tant que ou Déboguer en tant que, et même gérer l'exécution d'un objectif personnalisé à l'aide de l'option "Maven build ...". raccourci - tout cela ressemble à m2eclipse.
  5. Si vous décidez d'utiliser m2eclipse complete, vous pouvez accéder à la fenêtre > Préférences > MyEclipse > Maven4MyEclipse et cochez la case "Activer toutes les fonctionnalités m2eclipse". case à cocher.

A la sortie de la boîte, nous ne cachons que les bits qui peuvent rendre Maven déroutant pour les novices, si vous activez tous les bits m2, vous pouvez faire ce que vous voulez avec Maven et MyEclipse. Si vous continuez à avoir du mal à passer sur nos forums, dites-le-nous et nous vous aiderons dans la mesure de nos moyens.

Mike,

  

pense que le problème est que le projet a déjà été créé en dehors de MyEclipse et utilisé via maven à l'aide de la ligne de commande. L'importation échoue.

J'ai vu cet article en cherchant d'autres ressources Maven, je vais donc en parler.

Pourquoi ne pas importer votre projet existant en utilisant Fichier > Importez et activez toutes les fonctionnalités de m2eclipse et continuez à le développer comme vous le faisiez avant d’utiliser les outils de ligne de commande maven? C'est ce que j'ai fait et cela fonctionne bien pour les projets hérités, une fois que les fonctionnalités de m2eclipse sont activées, comme mentionné dans le n ° 5 de Riyad.

Personnellement, j’ai toujours pensé que le format de guerre Maven était un échec, mais certains vieux projets l’utilisent encore. Le format de Maven est juste un défaut (et un pauvre), pas une sorte de standard. Toutefois, nous laissons actuellement ces anciens projets "tels quels". (en utilisant la technique ci-dessus) juste parce que c'est facile. Mais pour les nouveaux travaux, nous utilisons les projets Web MyEclipse, puis activez simplement le support Maven sur ceux-ci. L'avantage est que vous bénéficiez de tout le support Maven et qu'il est très facile à utiliser et à gérer, mais qu'il n'y a plus de ligne de commande (bien que cela fonctionne toujours aussi) et que tous les outils MyEclipse fonctionnent parfaitement sur eux. C'est un "meilleur des deux" approche, bien, au moins pour nous. YMMV.

J'espère que ça aide, Dave

Mike,

  

Intéressant, que se passe-t-il lorsque des développeurs n'utilisent pas MyEclipse?

Pas un problème ici; Je travaille pour une très grande entreprise qui a été normalisée depuis un certain temps (heureusement, pourrais-je ajouter, car nous étions un magasin WSAD - frémissez.)

Quoi qu’il en soit, si vous avez des utilisateurs de MyEclipse et d’autres, je ne vois pas deux options. Tout d'abord, si vous créez des projets Web MyEclipse, puis "Ajouter des fonctionnalités Maven". (ou peu importe comment on l'appelle), ils travailleront dans MyEclipse et à partir de la ligne de commande Maven. Ainsi, même si vous n'utilisez pas MyEclipse, vous pouvez toujours utiliser les outils Maven en ligne de commande. En outre, la structure de MyEclipse étant la "guerre éclatée" plus standard, mise en page, cela devrait fonctionner avec tout ce que vous utilisez aussi.

Il convient également de noter que la présentation Web de Maven est tout simplement un paramètre par défaut et que Maven peut facilement prendre en charge toute structure de projet, y compris celle utilisée par MyEclipse. Vous devriez donc pouvoir utiliser le projet MyEclipse avec Maven dans n'importe quel outil configuration supplémentaire C’est probablement pour cette raison que les outils de ligne de commande Maven fonctionnent toujours sur les projets Web MyEclipse: les utilisateurs de MyEclipse configurent automatiquement Maven pour reconnaître le format.

Vous pouvez également simplement importer les projets Web Maven créés en externe, comme je l’ai dit dans mon dernier message. Nous n'aimons pas faire cela parce que cette structure est unique à Maven et ne fonctionne avec aucun outil, à l'exception de Maven. En conséquence, cela annule le support d’outil que vous obtenez automatiquement dans MyEclipse, Eclipse Java EE ou à peu près n’importe quel autre outil. C'est juste un mauvais défaut. Le format WAR éclaté, utilisé par MyEclipse, Eclipse Java EE, WSAD, RAD et tout le monde, constitue tout simplement une meilleure solution. Surtout quand ça marche encore avec Maven, tout va bien aussi.

Maven a été conçu pour être flexible dans la structure du projet. Nous venons de constater qu'en utilisant un peu cette flexibilité, vous pouvez également bénéficier du support Maven et d'un excellent support d'outils.

Dave

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top