I see. Well, I suppose you could keep a backup copy and just overwrite the incorrectly gen'd one every time, but that would be frustrating I'm sure.

I don't know if the current plugin supports this sort of specialized build configuration or some way to inject fragments into the output files, but I did find one interesting work-around. By adding a little configuration to your pom.xml, you can tell Maven to just overwrite the gen'd one with one specify in your pom.

Here's how I did it:

In the plugins section I added the following...

...
...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <configuration>
          <additionalConfig>
            <file>
              <name>.project</name>
              <content>
                <![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
        <name>ejbtest</name>
        <comment></comment>
        <projects>
        </projects>
        <buildSpec>
                <buildCommand>
                        
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
                        <triggers>full,incremental,</triggers>
                        <arguments>
                                <dictionary>
                                        <key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/ org.eclipse.jst.j2ee.ejb.annotations.xdoclet.xdocletbuilder.launch</ value>
                                </dictionary>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
                        <triggers>full,incremental,</triggers>
                        <arguments>
                                <dictionary>
                                        <key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/ GenerateSources.launch</value>
                                </dictionary>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        <name>org.eclipse.jdt.core.javabuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.wst.common.project.facet.core.builder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.wst.validation.validationbuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
        </buildSpec>
        <natures>
                
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
                <nature>org.eclipse.jdt.core.javanature</nature>
                
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
                <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
        </natures>
</projectDescription>
]]>
              </content>
            </file>
          </additionalConfig>
        </configuration>
      </plugin>
...
...

And Maven will happily write that file (conveniently) after the wrong .project gets written.

I doubt that this is the correct way to do it, but it works for now and seems easier than recopying your .project config over the gen'd one.

Let me know if there's a better way.

Thanks

--
James Mitchell
678.910.8017




On Oct 20, 2006, at 3:33 AM, Lewis, Eric wrote:

Well, I'm running Callisto (3.2.1) with WTP and I have a very simple EJB Project, which uses Maven as a Builder to generate artefacts with XDoclet. Now, when I run eclipse:eclipse (within Eclipse, as an External Tool, refreshing the project afterwards), I get the error

Errors during build.
Errors running builder "Integrated External Tool Builder" on project ...
The builder launch configuration could not be found.

This is the .project before

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
        <name>ejbtest</name>
        <comment></comment>
        <projects>
        </projects>
        <buildSpec>
                <buildCommand>
                        
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
                        <triggers>full,incremental,</triggers>
                        <arguments>
                                <dictionary>
                                        <key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/ org.eclipse.jst.j2ee.ejb.annotations.xdoclet.xdocletbuilder.launch</ value>
                                </dictionary>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
                        <triggers>full,incremental,</triggers>
                        <arguments>
                                <dictionary>
                                        <key>LaunchConfigHandle</key>
<value>&lt;project&gt;/.externalToolBuilders/ GenerateSources.launch</value>
                                </dictionary>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        <name>org.eclipse.jdt.core.javabuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.wst.common.project.facet.core.builder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
                <buildCommand>
                        
<name>org.eclipse.wst.validation.validationbuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
        </buildSpec>
        <natures>
                
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
                <nature>org.eclipse.jdt.core.javanature</nature>
                
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
                <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
        </natures>
</projectDescription>

and after

<projectDescription>
  <name>daytrader-ejb</name>
  <comment>DayTrader EJBs</comment>
  <projects/>
  <buildSpec>
    <buildCommand>
      <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
      <arguments/>
    </buildCommand>
    <buildCommand>
      <name>org.eclipse.jdt.core.javabuilder</name>
      <arguments/>
    </buildCommand>
    <buildCommand>
      <name>org.eclipse.wst.common.project.facet.core.builder</name>
      <arguments/>
    </buildCommand>
    <buildCommand>
      <name>org.eclipse.wst.validation.validationbuilder</name>
      <arguments/>
    </buildCommand>
  </buildSpec>
  <natures>
    <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
    <nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</ nature>
    <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
  </natures>
</projectDescription>

Looks to me like Eclipse kicks out my External Builder.

Maven's output is
[INFO] Executed tasks
[INFO] [eclipse:eclipse]
[INFO] File C:\jp\ejbtest\.project already exists.
Additional settings will be preserved, run mvn eclipse:clean if you want old settings to be removed.
[INFO] Not writing settings - defaults suffice
[INFO] Wrote Eclipse project for "daytrader-ejb" to C:\jp\ejbtest.

Frankly, from the documentation I'm not quite sure whether I should define the parameters 'wtpversion' or 'additionalBuildcommands' if I already have a fully working project.

Best regards,
Eric
-----Ursprüngliche Nachricht-----
Von: James Mitchell [mailto:[EMAIL PROTECTED]
Gesendet: Freitag, 20. Oktober 2006 00:56
An: Maven Users List
Betreff: Re: Create only .classpath with eclipse:eclipse?

The eclipse plugin can handle most anything you throw at it.  What
specifically is wrong with the output .project file?

What type of project is it?  Web Tools?  MyEclipse?  RAD?


--
James Mitchell
678.910.8017




On Oct 19, 2006, at 11:59 AM, Lewis, Eric wrote:

Hi

I'm new to this list, so.. hi!  :-)
We're changing our build to Maven, and since the POMs are the
masters of
the build, we'd like to execute eclipse:eclipse whenever the POM has
chagned.
However, this messes up the .project file. Is there any way to tell
the
eclipse plugin to only generate the class path?

Best regards,
Eric

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to