2012-05-21 5 views
1

J'ai fait un projet EJB à travers Maven en utilisant "org.codehaus.mojo.archetypes: ejb-jee5" dernière version. Puis j'ai tapé "mvn install" et "mvn eclipse: eclipse".Comment importer un projet EJB maven dans eclipse? (sans m2e)

Enfin, je l'ai importé en tant que projet java général dans eclipse mais le projet n'est pas reconnu comme étant compatible EJB.

Qu'est-ce que j'ai fait de mal?

Merci

EDIT

essayé cela comme suggéré par un awnser, ne fonctionne pas

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-eclipse-plugin</artifactId> 
      <configuration> 
       <buildcommands> 
        <buildcommand>org.eclipse.wst.common.project.facet.core.builder</buildcommand> 
        <buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand> 
        <buildcommand>org.eclipse.wst.validation.validationbuilder</buildcommand> 
       </buildcommands> 
       <additionalProjectnatures> 
        <projectnature>org.eclipse.jem.workbench.JavaEMFNature</projectnature> 
        <projectnature>org.eclipse.wst.common.modulecore.ModuleCoreNature</projectnature> 
        <projectnature>eclipse.jdt.core.javanature</projectnature> 
        <projectnature>org.eclipse.wst.common.project.facet.core.nature</projectnature> 
       </additionalProjectnatures> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

EDIT

Apparemment, l'ajout de ces natures constructeur et à votre .project n'est pas En plus, un fichier xml décrivant la facette activée est également généré, pour cela je devrais ajouter le code suivant entre les '' tags

<additionalProjectFacets> 
    <jst.java>1.6</jst.java> 
    <jst.ejb>3.0</jst.ejb> 
</additionalProjectFacets> 

Cependant les lignes 4 génèrent un « échec Build »

Répondre

0

donc j'ai découvert, comme prévu de modifier les natures du projet n'est pas enought, vous devez également générer un autre fichier décrivant chose comme les facettes activées, etc.

ajouter à votre projet EJB et il sera reconnu comme un EJB sans m2e.

<build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-eclipse-plugin</artifactId> 
       <configuration> 
        <additionalBuildcommands> 
         <buildCommand> 
          <name>org.eclipse.jdt.core.javabuilder</name> 
         </buildCommand> 
         <buildCommand> 
          <name>org.eclipse.wst.common.project.facet.core.builder</name> 
         </buildCommand> 
         <buildCommand> 
          <name>org.eclipse.wst.validation.validationbuilder</name> 
         </buildCommand> 
         <buildCommand> 
          <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name> 
          <arguments> 
           <LaunchConfigHandle>&lt;project&gt;/.settings/MavenBuilder.launch</LaunchConfigHandle> 
          </arguments> 
         </buildCommand> 
        </additionalBuildcommands> 
        <additionalProjectnatures> 
         <projectnature>org.eclipse.wst.common.project.facet.core.nature</projectnature> 
         <projectnature>org.eclipse.jdt.core.javanature</projectnature> 
         <projectnature>org.eclipse.wst.common.modulecore.ModuleCoreNature</projectnature> 
         <projectnature>org.eclipse.jem.workbench.JavaEMFNature</projectnature> 
        </additionalProjectnatures> 
        <additionalConfig> 
         <file> 
          <name>.settings/org.eclipse.wst.common.project.facet.core.xml</name> 
          <content> 
           <![CDATA[<faceted-project> 
    <runtime name="my JBoss Runtime" /> 
    <fixed facet="jst.ejb" /> 
    <fixed facet="jst.java" /> 
    <installed facet="jst.java" version="6.0" /> 
    <installed facet="jst.ejb" version="3.0" /> 
</faceted-project>]]> 
          </content> 
         </file> 
         <file> 
          <name>.settings/org.eclipse.wst.common.component</name> 
          <content> 
           <![CDATA[ 
<project-modules id="moduleCoreId" project-version="1.5.0"> 
    <wb-module deploy-name="${project.artifactId}"> 
     <wb-resource deploy-path="/" source-path="/src/main/java" /> 
     <wb-resource deploy-path="/" source-path="/src/main/resources" /> 
     <property name="java-output-path" value="target/classes" /> 
    </wb-module> 
</project-modules>]]> 
          </content> 
         </file> 
         <file> 
          <name>.checkstyle</name> 
          <content> 
           <![CDATA[<fileset-config file-format-version="1.2.0" simple-config="true"> 
    <fileset name="all" enabled="true" check-config-name="Myproject Checks" local="false"> 
     <file-match-pattern match-pattern="." include-pattern="true" /> 
    </fileset> 
</fileset-config>]]> 
          </content> 
         </file> 
         <file> 
          <name>.settings/MavenBuilder.launch</name> 
          <content> 
           <![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<launchConfiguration type="org.eclipse.ui.externaltools.ProgramBuilderLaunchConfigurationType"> 
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="$${working_set:&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;launchConfigurationWorkingSet editPageId=&quot;org.eclipse.ui.resourceWorkingSetPage&quot; factoryID=&quot;org.eclipse.ui.internal.WorkingSetFactory&quot; label=&quot;working set&quot; name=&quot;working set&quot;&gt;&#13;&#10;&lt;item factoryID=&quot;org.eclipse.ui.internal.model.ResourceFactory&quot; path=&quot;/acces-services/target/test-classes&quot; type=&quot;2&quot;/&gt;&#13;&#10;&lt;item factoryID=&quot;org.eclipse.ui.internal.model.ResourceFactory&quot; path=&quot;/acces-services/target/classes&quot; type=&quot;2&quot;/&gt;&#13;&#10;&lt;/launchConfigurationWorkingSet&gt;}" /> 
<booleanAttribute key="org.eclipse.debug.core.capture_output" value="false" /> 
<booleanAttribute key="org.eclipse.debug.ui.ATTR_CONSOLE_OUTPUT_ON" value="false" /> 
<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false" /> 
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_BUILD_SCOPE" value="$${working_set:&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#13;&#10;&lt;launchConfigurationWorkingSet editPageId=&quot;org.eclipse.ui.resourceWorkingSetPage&quot; factoryID=&quot;org.eclipse.ui.internal.WorkingSetFactory&quot; label=&quot;workingSet&quot; name=&quot;workingSet&quot;&gt;&#13;&#10;&lt;item factoryID=&quot;org.eclipse.ui.internal.model.ResourceFactory&quot; path=&quot;/acces-services/src/test/resources&quot; type=&quot;2&quot;/&gt;&#13;&#10;&lt;item factoryID=&quot;org.eclipse.ui.internal.model.ResourceFactory&quot; path=&quot;/acces-services/src/main/resources&quot; type=&quot;2&quot;/&gt;&#13;&#10;&lt;/launchConfigurationWorkingSet&gt;}" /> 
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${env.M2_HOME}\bin\mvn.bat" /> 
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="full,incremental,auto,clean" /> 
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="resources:resources resources:testResources --offline" /> 
<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true" /> 
<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="$${workspace_loc:/acces-services}" /> 
</launchConfiguration>]]> 
          </content> 
         </file> 
        </additionalConfig> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

avis que Nous définissons l'exécution Wich Server est utilisé, ce qui signifie que vous devez configurer un serveur d'exécution avant et mettre son nom à l'intérieur.

0

vous pouvez ajouter de la nature nécessaire (thats comment son nom dans le monde éclipse) dans pom.xml

Voir Adding project nature to your Maven pom pour créer un vide Projet EJB et voir dans .project comment la nature est nommée (elle pourrait avoir plus d'une nature).

+0

J'ai édité ma question pour vous montrer le code que j'ai mis dans mon pom.xml, et malheureusement, ça ne marche pas. – Eildosa

Questions connexes