Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] m2e 1.1 and compatible egit connector availability

@Mike Great that you've come up with a patch, and I see it's already been getting some attention. Hopefully patch fixes the issue and gets applied/accepted.

@Jason Just tried latest nightlies/snapshots of subversive and cxf connector. When importing maven project with cxf-codegen-plugin configured from svn repository I'm getting NPE (see [1]). Subversive connector works ok, issue is in cxf connector. Not sure what is the root cause there, but I'm suspecting that it's https://github.com/sonatype/m2eclipse-cxf/blob/master/org.sonatype.m2e.cxf/src/org/sonatype/m2e/cxf/internal/CxfBuildParticipant.java which is referencing sourceDirectory while it should be referencing sourceRoot configuration property defined in https://svn.apache.org/repos/asf/cxf/trunk/maven-plugins/codegen-plugin/src/main/java/org/apache/cxf/maven_plugin/wsdl2java/WSDL2JavaMojo.java
There's another EPL 1.0 licensed cxf connector ( http://code.google.com/a/eclipselabs.org/p/m2e-cxf-codegen-connector/ ) working with m2e 1.0 & 1.1 with http://code.google.com/a/eclipselabs.org/p/m2e-cxf-codegen-connector/source/browse/org.eclipselabs.m2e.cxf.codegen.connector/plugins/org.eclipselabs.m2e.cxf.codegen.connector/src/main/java/org/eclipselabs/m2e/cxf/codegen/connector/CxfWsdl2JavaBuildParticipant.java that makes use of sourceRoot + more, better controlling if build, and if yes of what sort, should be executed. It's configured for cxf 2.5.0+ but with simple change to lifecycle mapping metadata file it works well with older cxf too (tested with 2.3.2 and 2.4.6). It can be used until cxf-codegen-plugin (2.6.2/2.7.1+) with embedded lifecycle mapping metadata is released (see https://issues.apache.org/jira/browse/CXF-4152). Maybe just drop sonatype cxf m2e connector (repo).

Kind regards,
Stevo Slavic.

[1] eclipse log snippet
java.lang.NullPointerException
    at org.eclipse.m2e.jdt.AbstractJavaProjectConfigurator.getFullPath(AbstractJavaProjectConfigurator.java:70)
    at org.eclipse.m2e.jdt.AbstractJavaProjectConfigurator.configureRawClasspath(AbstractJavaProjectConfigurator.java:57)
    at org.eclipse.m2e.jdt.internal.AbstractJavaProjectConfigurator.invokeJavaProjectConfigurators(AbstractJavaProjectConfigurator.java:168)
    at org.eclipse.m2e.jdt.internal.AbstractJavaProjectConfigurator.configure(AbstractJavaProjectConfigurator.java:128)
    at org.eclipse.m2e.core.project.configurator.AbstractLifecycleMapping.configure(AbstractLifecycleMapping.java:109)
    at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.updateProjectConfiguration(ProjectConfigurationManager.java:414)
    at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.configureNewMavenProject(ProjectConfigurationManager.java:240)
    at org.eclipse.m2e.core.internal.project.ProjectConfigurationManager.importProjects(ProjectConfigurationManager.java:156)
    at org.eclipse.m2e.scm.internal.wizards.MavenProjectCheckoutJob$CheckoutJobChangeListener$4.doCreateMavenProjects(MavenProjectCheckoutJob.java:239)
    at org.eclipse.m2e.core.ui.internal.wizards.AbstactCreateMavenProjectJob$1.doCreateMavenProjects(AbstactCreateMavenProjectJob.java:45)
    at org.eclipse.m2e.core.ui.internal.wizards.AbstractCreateMavenProjectsOperation.run(AbstractCreateMavenProjectsOperation.java:73)
    at org.eclipse.m2e.core.ui.internal.wizards.AbstactCreateMavenProjectJob.runInWorkspace(AbstactCreateMavenProjectJob.java:49)
    at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:38)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

On Tue, Jul 10, 2012 at 2:27 AM, Mike Youngstrom <youngm@xxxxxxxxx> wrote:
 Stevo,

FWIW I think I've run into the same rename on import issue that you ran into.  I've already created an issue [1] and a candidate patch you can take a look at if you want.  The patch has worked for my use cases.


Mike


On Thu, Jul 5, 2012 at 6:42 AM, Jason van Zyl <jason@xxxxxxxx> wrote:
Stevo,

There is now a build in CI[1] and it's publishing a p2 site to Nexus[2]. Let me know if you need anything I can adjust anything required pretty easily now.


On Jul 5, 2012, at 8:00 AM, Stevo Slavić wrote:

@Jason Thank you very much, I appreciate it!

@Igor What do you think about my code inspection findings, could this be the cause of renames on import from scm?

Kind regards,
Stevo Slavić.

On Tue, Jul 3, 2012 at 10:37 PM, Jason van Zyl <jason@xxxxxxxx> wrote:
Stevo,

I've extracted the build now into its own repository:


I just copied over files, but I've listed you in the POM as a contributor.

I'll finish working on extracting the rest of the connectors now, but should be easier to work and test just the CXF connector.

On Jul 3, 2012, at 11:33 AM, Stevo Slavić wrote:

@Jason I've updated pull request ( https://github.com/sonatype/m2eclipse-extras/pull/12 ) so it now includes a test. But, work is not complete yet, few touches from experienced m2e/tycho developer are left to be done:
- Most if not all connector projects use custom settings.xml for tests, directing tests to use "remoterepo" directory as central repository. I couldn't find reference to this practice in tycho book, nor did I find useful related info by googling. What would be rationale for this practice, and is there some automated way to get that repo filled?
- Before introducing settings.xml, test would resolve dependencies but test would failed because test dependencies are not resolved well (m2e common tests module but also there are warning about target environment). It looks like to me that pom and manifest configuration is on-par with several other m2e-extras, but something is obviously missing; test itself should be ok once dependencies are configured well, integration project is configured ok and expectations/assertions are valid too.
Can you please review the pull request? To include remoterepo empty directory in patch I had to add .gitignore file inside, so watch out for this when adding files there.

@Igor I will find the bug and get back to you if I manage to resolve it or need support along the way.

Kind regards,
Stevo.

On Tue, Jul 3, 2012 at 3:42 AM, Igor Fedorenko <igor@xxxxxxxxxxxxxx> wrote:
Please provide a quality patch with corresponding test(s) and I'll try
my best to review and apply it.

--
Regards,
Igor


On 12-07-02 7:06 PM, Stevo Slavić wrote:
@Igor In command line I've cloned remote to a local Mahout repo. Using
eclipse-jee-juno-linux-gtk-x86_64 I've installed m2e 1.1 (btw m2e
marketplace still installs/points to m2e 1.0.200). Then I've imported
"existing maven projects" from local repo directory - submodule
directories did not get copied over.
Then I logically removed eclipse projects from workspace (cleaned
eclipse specific dirs and files from project sources), installed egit,
installed m2e git scm handler, configured local repo in eclipse, from
Git Repository Exploring perspective and repo working dir "imported
maven projects" - submodule directories get copied over.
I believe it is still m2e-core issue, just manifests when called from
scm handlers. E.g. that create method in ProjectConfigurationManager
could be getting different project info from import existing maven
projects wizard, and from import maven projects from scm wizards. Also,
ProjectImportConfiguration.getProjectName which is deprecated because of
not taking basedirRename into account, is being used just before
basedirRename.

@Jason With today's fix of
https://issues.apache.org/jira/browse/CXF-4152 maybe trash cxf codegen
connector stuff from sonatype/m2e-extras repo entirely? Or continue to
complete and release solution (since it's almost done, but no longer
maintain it since it found new better home); this would provide support
for older and current cxf release, until version with the fix (embedded
metadata) is released and users can upgrade?

Kind regards,
Stevo.

On Mon, Jul 2, 2012 at 3:26 PM, Stevo Slavić <sslavic@xxxxxxxxx
<mailto:sslavic@xxxxxxxxx>> wrote:

    @Igor Will give it a try later today with clean eclipse + m2e only.
    For testing I'm using Apache Mahout project - there is both git repo
    on github and svn repo, and all of its submodules do not have same
    directory name and artifactId.

    @Jason Thanks for antlr tip, will look into it for some tests
    examples, and amend pull request with some for cxf.

    Kind regards,
    Stevo.


    On Mon, Jul 2, 2012 at 3:11 PM, Jason van Zyl <jason@xxxxxxxx
    <mailto:jason@xxxxxxxx>> wrote:

        Cool, I'll take a look today.

        On Jul 2, 2012, at 7:59 AM, Stevo Slavić wrote:

        Just created a pull request for the cxf-codegen-plugin
        connector: https://github.com/sonatype/m2eclipse-extras/pull/12

        Kind regards,
        Stevo.

        On Mon, Jul 2, 2012 at 10:12 AM, Stevo Slavić
        <sslavic@xxxxxxxxx <mailto:sslavic@xxxxxxxxx>> wrote:

            @Igor To truly uninstall Subversive's Team Provider I have
            to uninstall Subversive completely since all others plugin
            features depend on it. Or do you want me to uninstall
            Subversive entirely and try "Check out Maven Projects from
            SCM"? Attached is my eclipse configuration.

            @Jason When you say split out into individual build, I
            assume you mean making cxf-codegen-plugin connector a
            separate build from m2e-extras. I see (
            https://github.com/sonatype/m2eclipse-extras/commit/a27cb4331c4001220e0ba00a481fdb0df39e4f86
            ) you already started work on this, but branch is still
            part of m2e-extras repository. Will give it a try, check
            what's left to be done on splitting part, and
            juno/tycho/tesla adjustments. My experience with tycho,
            eclipse plugins and osgi is rather thin, but I'm willing
            to learn (tycho book will come handy). Last time I tried
            to tackle cxf-codegen-plugin connector I got stuck with
            site publishing part, and wasn't very pleased with the way
            I included plugin specific configuration API. Can you
            please point me to some connector which also has maven
            plugin as dependency to use plugin's configuration API?

            Kind regards,
            Stevo.


            On Mon, Jul 2, 2012 at 4:16 AM, Jason van Zyl
            <jason@xxxxxxxx <mailto:jason@xxxxxxxx>> wrote:

                I am planning on splitting out the extras into
                individual builds so I'll get to it eventually but if
                you want to split it out and adapt it to Juno go for
                it. I'll add it to the build grid and publish it when
                you do.

                jvz

                On 2012-07-01, at 7:37 PM, Stevo Slavić
                <sslavic@xxxxxxxxx <mailto:sslavic@xxxxxxxxx>> wrote:

                Uninstalled Polarion's m2e Subversive integration,
                installed this nightly Sonatype's
                m2eclipse-subversive connector build, checked out few
                projects as maven projects - so far it seems to work
                ok (with latest eclipse, m2e, subversive, and svnkit
                releases).

                Wish cxf-codegen-plugin connector in that m2extras
                branch would get some attention too - hopefully not
                much is needed to get it working. Supporting cxf from
                2.3+ would be great.

                Kind regards,
                Stevo.

                On Sun, Jul 1, 2012 at 11:57 PM, Jason van Zyl
                <jason@xxxxxxxx <mailto:jason@xxxxxxxx>> wrote:

                    Glad it worked for you.

                    Supporting non-standard layouts isn't high on my
                    priority list. Not something I'll be looking at
                    myself.

                    I also updated the build for the Subversive
                    connector and deployed it. I haven't tested it
                    but you're welcome to give it a whirl:

                    http://repository.tesla.io:8081/nexus/content/sites/m2e.extras/m2eclipse-subversive/0.13.0/N/0.13.0.201207010112/

                    On Jul 1, 2012, at 5:33 PM, Stevo Slavić wrote:

                    Thanks for sharing!

                    It installs ok, but...

                    When importing existing maven projects from
                    local git repository using this m2e egit
                    connector (and when importing maven projects
                    from remote svn repository using Polarion's
                    Subversive m2e 1.1 compatible connector) where
                    projects are multimodule projects and submodule
                    directory names do not match their respective
                    artifactId, parent/aggregator module gets
                    imported well while submodules get copied over
                    to directories with names equal to their
                    artifactId, and then imported; old submodule
                    directories get marked as deleted in svn.

                    I then have to logically remove eclipse projects
                    for submodules, from parent/aggregator
                    perspective revert changes and import existing
                    maven projects - then it imports well.

                    Probably this is bug in m2e itself and not in
                    scm connectors.

                    Maybe m2e should also bug users that have
                    submodule directory names and their artifactId
                    not aligned with warnings, and recommend and
                    offer quick-fixes to align the names - maven
                    plugins (like site and related ones) expect (or
                    at least used to expect) this consistency, it's
                    more intuitive, and helps avoid collisions when
                    working on more (related) projects in single
                    workspace. Nevertheless, it should work ok with
                    configuration which is not aligned with convention.

                    Btw, maybe Sonatype developers would be
                    interested in somewhat related topic (m2e scm
                    connector for Subversive) at
                    http://www.eclipse.org/forums/index.php/m/892888/#msg_892888

                    Kind regards,
                    Stevo.

                    On Sun, Jul 1, 2012 at 3:05 PM, Jason van Zyl
                    <jason@xxxxxxxx <mailto:jason@xxxxxxxx>> wrote:

                        To help you can test this build here:

                        http://repository.tesla.io:8081/nexus/content/sites/m2e.extras/m2eclipse-egit/0.14.0/N/0.14.0.20120701011/

                        On Jul 1, 2012, at 9:03 AM, Stevo Slavić wrote:

                        Hello m2e community,

                        m2e egit connector in the current m2e 1.1
                        catalogue is not compatible with recently
                        released egit 2.0 (see [1])

                        What needs to be done to have a compatible
                        version released? Is there any help needed?

                        Kind regards,
                        Stevo.


                        [1] m2e egit dependency conflict

                        Operation details
                        Cannot complete the install because of a
                        conflicting dependency.
                        Software being installed: Maven SCM Handler
                        for EGit 0.14.0.201110251725
                        (org.sonatype.m2e.egit.feature.feature.group 0.14.0.201110251725)
                        Software currently installed: Eclipse EGit
                        2.0.0.201206130900-r
                        (org.eclipse.egit.feature.group
                        2.0.0.201206130900-r)
                        Only one of the following can be installed
                        at once:
                        Git Team Provider UI 2.0.0.201206130900-r
                        (org.eclipse.egit.ui 2.0.0.201206130900-r)
                        Git Team Provider UI (Incubation) 0.8.4
                        (org.eclipse.egit.ui 0.8.4)
                        Git Team Provider UI 1.1.0.201109151100-r
                        (org.eclipse.egit.ui 1.1.0.201109151100-r)
                        Git Team Provider UI 1.3.0.201202151440-r
                        (org.eclipse.egit.ui 1.3.0.201202151440-r)
                        Git Team Provider UI (Incubation) 0.11.1
                        (org.eclipse.egit.ui 0.11.1)
                        Git Team Provider UI (Incubation) 0.9.1
                        (org.eclipse.egit.ui 0.9.1)
                        Git Team Provider UI 1.0.0.201106090707-r
                        (org.eclipse.egit.ui 1.0.0.201106090707-r)
                        Cannot satisfy dependency:
                        From: Eclipse EGit 2.0.0.201206130900-r
                        (org.eclipse.egit.feature.group
                        2.0.0.201206130900-r)
                        To: org.eclipse.egit.ui [2.0.0.201206130900-r]
                        Cannot satisfy dependency:
                        From: Maven SCM Handler for EGit
                        0.14.0.201110251725 (org.sonatype.m2e.egit
                        0.14.0.201110251725)
                        To: bundle org.eclipse.egit.ui [1.0.0,2.0.0)
                        Cannot satisfy dependency:
                        From: Maven SCM Handler for EGit
                        0.14.0.201110251725
                        (org.sonatype.m2e.egit.feature.feature.group 0.14.0.201110251725)
                        To: org.sonatype.m2e.egit [0.14.0.201110251725]
                        _______________________________________________
                        m2e-users mailing list
                        m2e-users@xxxxxxxxxxx
                        <mailto:m2e-users@xxxxxxxxxxx>
                        https://dev.eclipse.org/mailman/listinfo/m2e-users

                        Thanks,

                        Jason

                        ----------------------------------------------------------
                        Jason van Zyl
                        Founder & CTO, Sonatype
                        Founder,  Apache Maven
                        http://twitter.com/jvanzyl
                        ---------------------------------------------------------

                        happiness is like a butterfly: the more you chase it, the more it will
                        elude you, but if you turn your attention to other things, it will come
                        and sit softly on your shoulder ...

                        -- Thoreau






                        _______________________________________________
                        m2e-users mailing list
                        m2e-users@xxxxxxxxxxx
                        <mailto:m2e-users@xxxxxxxxxxx>

                        https://dev.eclipse.org/mailman/listinfo/m2e-users


                    _______________________________________________
                    m2e-users mailing list
                    m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>
                    https://dev.eclipse.org/mailman/listinfo/m2e-users

                    Thanks,

                    Jason

                    ----------------------------------------------------------
                    Jason van Zyl
                    Founder & CTO, Sonatype
                    Founder,  Apache Maven
                    http://twitter.com/jvanzyl
                    ---------------------------------------------------------

                    believe nothing, no matter where you read it,
                    or who has said it,
                    not even if i have said it,
                    unless it agrees with your own reason
                    and your own common sense.

                     -- Buddha






                    _______________________________________________
                    m2e-users mailing list
                    m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>

                    https://dev.eclipse.org/mailman/listinfo/m2e-users


                _______________________________________________
                m2e-users mailing list
                m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>
                https://dev.eclipse.org/mailman/listinfo/m2e-users

                _______________________________________________
                m2e-users mailing list
                m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>

                https://dev.eclipse.org/mailman/listinfo/m2e-users



        _______________________________________________
        m2e-users mailing list
        m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>
        https://dev.eclipse.org/mailman/listinfo/m2e-users

        Thanks,

        Jason

        ----------------------------------------------------------
        Jason van Zyl
        Founder & CTO, Sonatype
        Founder,  Apache Maven
        http://twitter.com/jvanzyl
        ---------------------------------------------------------

        In short, man creates for himself a new religion of a rational
        and technical order to justify his work and to be justified in it.

           -- Jacques Ellul, The Technological Society






        _______________________________________________
        m2e-users mailing list
        m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>

        https://dev.eclipse.org/mailman/listinfo/m2e-users





_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users


_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users

_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder & CTO, Sonatype
Founder,  Apache Maven
http://twitter.com/jvanzyl
---------------------------------------------------------







_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users


_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users

Thanks,

Jason

----------------------------------------------------------
Jason van Zyl
Founder & CTO, Sonatype
Founder,  Apache Maven
http://twitter.com/jvanzyl
---------------------------------------------------------

We know what we are, but know not what we may be.

  -- Shakespeare






_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users



_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users



Back to the top