On 29-04-2014 10:29, Hans Schwäbli wrote:
It is a bit more tricky than I thought to get that sources working in Eclipse. First I have to check jbehave-core out. But then I don't must import it into Eclipse. First I have to configure the settings.xml with the company proxy settings I need and build everything with: mvn -s settings.xml clean install -Dmaven.test.skip=true

why don't you just copy the profiles/repositories specified in the provided settings.xml to your ~user/.m2/settings.xml?
If I don't do this but import the projects into Eclipse, then JBehave dependencies are downloaded from the maven repository instead of using the checked out ones.
Jbehave snapshots jars are not being deployed into any remote repository (at least not that I know) so I think this is not true. m2e will get those dependencies from your local repository only if they aren't imported in the eclipse workspace...

Then I need to configure Eclipse so that it uses the Maven lifecycleMappingMetadata. Below I updated it for the maven-dependency-plugin exclusion (see below).
version 1.5 of m2e (http://download.eclipse.org/technology/m2e/milestones/1.5 ) has the feature that Mauro have said... it is just a matter of choose the option and you don't need to deal with POM changes...
In Eclipse I must use the settings.xml file from JBehave.
Now I finally can import the projects into Eclipse (as Maven projects).
After it builds I have just one compile error: JRubySteps cannot be resolved to a type. I can ignore that (delete the JRuby example project).
There are quite some pitfalls, at least for my brain.
<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
<!-- Why this is needed for Eclipe: http://wiki.eclipse.org/M2E_plugin_execution_not_covered -->
    <pluginExecutions>
        <pluginExecution>
            <pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<versionRange>[1.0.0,)</versionRange>
                <goals>
<goal>copy-dependencies</goal>
                    <goal>unpack</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore />
            </action>
        </pluginExecution>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>org.jbehave</groupId>
                <artifactId>
                    jbehave-maven-plugin
                </artifactId>
                <versionRange>
                    [3.10-SNAPSHOT,)
                </versionRange>
                <goals>
                    <goal>
                        unpack-view-resources
                    </goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore></ignore>
            </action>
        </pluginExecution>
        <pluginExecution>
            <pluginExecutionFilter>
                <groupId>
                    org.jvnet.hudson.tools
                </groupId>
                <artifactId>
                    maven-hpi-plugin
                </artifactId>
                <versionRange>
                    [3.0.1,)
                </versionRange>
                <goals>
                    <goal>insert-test</goal>
                    <goal>test-hpl</goal>
                    <goal>
                        resolve-test-dependencies
                    </goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore></ignore>
            </action>
        </pluginExecution>
        <pluginExecution>
            <pluginExecutionFilter>
<groupId>org.scala-tools</groupId>
                <artifactId>
                    maven-scala-plugin
                </artifactId>
                <versionRange>
                    [2.9.1,)
                </versionRange>
                <goals>
                    <goal>add-source</goal>
                    <goal>compile</goal>
                    <goal>testCompile</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore></ignore>
            </action>
        </pluginExecution>
        <pluginExecution>
            <pluginExecutionFilter>
<groupId>de.saumya.mojo</groupId>
                <artifactId>
                    jruby-maven-plugin
                </artifactId>
                <versionRange>
                    [0.29.1,)
                </versionRange>
                <goals>
                    <goal>compile</goal>
                </goals>
            </pluginExecutionFilter>
            <action>
                <ignore></ignore>
            </action>
        </pluginExecution>
    </pluginExecutions>
</lifecycleMappingMetadata>


On Tue, Apr 29, 2014 at 12:59 PM, Hans Schwäbli <bugs.need.love....@gmail.com <mailto:bugs.need.love....@gmail.com>> wrote:

    Maybe Eclipse 4.4 has this feature, I haven't discovered it in 4.3.
    I created a lifecycle mappings metadata which solves this problem
    (such things could be added to a Wiki for instance):
    <?xml version="1.0" encoding="UTF-8"?>
    <lifecycleMappingMetadata>
        <!-- Why this is needed for Eclipe:
    http://wiki.eclipse.org/M2E_plugin_execution_not_covered -->
        <pluginExecutions>
            <pluginExecution>
                <pluginExecutionFilter>
    <groupId>org.jbehave</groupId>
                    <artifactId>
                        jbehave-maven-plugin
                    </artifactId>
                    <versionRange>
                        [4.0-SNAPSHOT,)
                    </versionRange>
                    <goals>
                        <goal>
                            unpack-view-resources
                        </goal>
                    </goals>
                </pluginExecutionFilter>
                <action>
                    <ignore></ignore>
                </action>
            </pluginExecution>
            <pluginExecution>
                <pluginExecutionFilter>
                    <groupId>
                        org.jvnet.hudson.tools
                    </groupId>
                    <artifactId>
                        maven-hpi-plugin
                    </artifactId>
                    <versionRange>
                        [3.0.1,)
                    </versionRange>
                    <goals>
    <goal>insert-test</goal>
                        <goal>test-hpl</goal>
                        <goal>
                            resolve-test-dependencies
                        </goal>
                    </goals>
                </pluginExecutionFilter>
                <action>
                    <ignore></ignore>
                </action>
            </pluginExecution>
            <pluginExecution>
                <pluginExecutionFilter>
    <groupId>org.scala-tools</groupId>
                    <artifactId>
                        maven-scala-plugin
                    </artifactId>
                    <versionRange>
                        [2.9.1,)
                    </versionRange>
                    <goals>
    <goal>add-source</goal>
                        <goal>compile</goal>
    <goal>testCompile</goal>
                    </goals>
                </pluginExecutionFilter>
                <action>
                    <ignore></ignore>
                </action>
            </pluginExecution>
            <pluginExecution>
                <pluginExecutionFilter>
    <groupId>de.saumya.mojo</groupId>
                    <artifactId>
                        jruby-maven-plugin
                    </artifactId>
                    <versionRange>
                        [0.29.1,)
                    </versionRange>
                    <goals>
                        <goal>compile</goal>
                    </goals>
                </pluginExecutionFilter>
                <action>
                    <ignore></ignore>
                </action>
            </pluginExecution>
        </pluginExecutions>
    </lifecycleMappingMetadata>


    On Mon, Apr 28, 2014 at 11:02 PM, Mauro Talevi
    <mauro.tal...@aquilonia.org <mailto:mauro.tal...@aquilonia.org>>
    wrote:

        Yes, the m2e plugin is very annoying in this.   IMO it's one
        of the worst design decisions they've made when migrating from
        the original m2eclipse plugin.  But with recent versions,
        Eclipse allows you to mark as ignored these errors without
        modifying the pom.xml.   The feature is marked as experimental
        but it's stable and works fine. It stores the info to be
        ignored in the workspace (I'm not sure if it can exported and
        re-imported easily though).

        This is why the source code is not polluted with the pom.xml
        modifications - as you say to preserve IDE neutrality.

        On 28/04/2014 14:46, Hans Schwäbli wrote:
        Thank you.
        I forgot about the page which explains the JBehave source
        building. So I didn't see that I need to use that
        settings.xml file.
        But I think my biggest mistake was when importing the maven
        project into Eclipse. The import wizard shows me the plugins
        which can't be found. There I can choose in a little dropdown
        that m2e writes into the pom.xml that these plugins are ignored.
        It works now with that approach.
        However, you could add these settings into the pom.xml parent
        file, so it would be no problem to import the maven projects
        into Eclipse. But I am afraid that you want to be IDE
        neutral. In that case a documentation on how to import
        JBehave sources into Eclipse would be nice. I would be
        willing to contribute if you provide some Wiki for JBehave
        (because I cannot commit anything in Github from the company
        and it is too much overhead to create HTML pages for me).


        On Fri, Apr 25, 2014 at 4:49 PM, Cristiano Gavião
        <cvgav...@gmail.com <mailto:cvgav...@gmail.com>> wrote:

            first things you must learn before are:

            - how works a maven settings.xml and how to set it in
            your machine;

            - how m2e works related to a pure maven outside eclipse...

            - how to make m2e ignore unsupported plugins...

            here you have tips how to build outside eclipse:
            http://jbehave.org/reference/latest/building-source.html

            for the rest, I'm sure you will find lot of materials on
            the net...

            Cristiano


            On 25-04-2014 10 <tel:25-04-2014%2010>:34, Hans Schwäbli
            wrote:

                I try to import the projects of jbehave-core (branch
                4.x) into Eclipse Kepler as Maven projects.
                It causes a lot of problems: 127 errors (compile and
                pom problems).
                For example the error in
                jbehave-core\examples\core\pom.xml is:

                "Multiple annotations found at this line:

                - maven-dependency-plugin (goals "copy-dependencies",
                "unpack") is not supported by m2e.

                - Plugin execution not covered by lifecycle
                configuration:
                
org.jbehave:jbehave-maven-plugin:4.0-SNAPSHOT:unpack-view-resources
                (execution: unpack-view-resources, phase: process-

                resources)"
                And for many other poms:
                "Could not find artifact
                org.jbehave:jbehave-maven-plugin:pom:4.0-SNAPSHOT"
                And:
                "Project build error: Unknown packaging: hpi"
                And if I build jbehave-core with maven (clean install
                without tests), then It fails with this error quite
                early at JBehave Hudson Plugin:

                [ERROR] Failed to execute goal
                org.kohsuke:access-modifier-checker:1.4:enforce
                (default-enforce) on project jbehave-hudson-plugin:
                Execution default-enforce of goal
                org.kohsuke:access-modifier-checker:1.4:enforce
                failed: Plugin
                org.kohsuke:access-modifier-checker:1.4 or one of its
                dependencies could not be resolved: Could not find
                artifact org.jenkins-ci:annotation-indexer:jar:1.4 in
                Central (http://repo1.maven.org/maven2) -> [Help 1]
                What is the problem? Or how do you get working
                projects of it in Eclipse after cloning it from Github?



            
---------------------------------------------------------------------
            To unsubscribe from this list, please visit:

            http://xircles.codehaus.org/manage_email







Reply via email to