Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] Import Maven Project and property placeholders

Hi,
I probably confused you with my explanation.
I submitted https://bugs.eclipse.org/bugs/show_bug.cgi?id=431580 with a description that probably makes more sense.

Best regards


On Sun, Mar 30, 2014 at 5:51 PM, Igor Fedorenko <igor@xxxxxxxxxxxxxx> wrote:
Please start with an issue and provide small example project that
demonstrate your case and expected behaviour during project import and
afterwards. I am still not sure I like what you suggest but hopefully
the example will clear this.

General m2e contribution requirements are explained in [1]. Note that
in addition to bugzilla and gerrit we require regression test(s)
submitted through github.

[1] https://wiki.eclipse.org/M2E_Development_Environment

--
Regards,
Igor


On 2014-03-30, 6:46, Anton Tanasenko wrote:
Hi,
Should I create an issue, or just submit a patch to gerrit without one?


On Sat, Mar 29, 2014 at 5:55 PM, Anton Tanasenko
<atg.sleepless@xxxxxxxxx <mailto:atg.sleepless@gmail.com>> wrote:

    Oh and I mean that only in the context of project name template. I
    do understand that this might cause troubles or at least
    inconsistencies with dependency resolution.
    In our case such properties are empty most of the time. There is a
    special build profile that does specify it, but it is very rarely
    used within eclipse, it is for headless jenkins build.


    On Sat, Mar 29, 2014 at 5:49 PM, Anton Tanasenko
    <atg.sleepless@xxxxxxxxx <mailto:atg.sleepless@gmail.com>> wrote:

        Well, actually, I thought about making it to treat placeholders
        as plain text or maybe event better ignoring them completely.
        At the moment import just fails with an exception.


        On Sat, Mar 29, 2014 at 5:45 PM, Igor Fedorenko
        <igor@xxxxxxxxxxxxxx <mailto:igor@xxxxxxxxxxxxxx>> wrote:

            This is not really supported by m2e because ${properties}
            are expected
            to change during development, and cannot be relied upon to
            establish
            project groupId/artifactId/version required for dependency
            resolution.

            Even if property values do not change, they can be inherited
            from
            project parent hierarchy, which I don't think is available
            during
            import. So the fix is much more involved than just ${property}
            expansion, if I am not mistaken. If you think you can
            implement this
            without causing significant performance degradation, please
            submit the
            patch to Gerrit and we'll discuss details there.

            --
            Regards,
            Igor


            On 2014-03-29, 11:22, Anton Tanasenko wrote:

                Hi,

                There's a small problem with Import Maven Project action
                when using
                [groupId], [artifactId] and/or [version] project name
                templates for
                projects that have property placeholders withing
                respective values.
                ProjectImportConfiguration#__getProjectName() uses those

                values as a
                replacement value for String#replaceAll(), and it fails
                whenever it sees
                '$' (which is part of ${...}), since this is a reserved
                character for
                group backreferences.

                In particular, we have a profile-dependent property
                within artifactId on
                some of our artifacts (bad practice, but I have no
                control over that,
                unfortunately).

                It should be pretty straightforward to fix with
                Matcher.quoteReplacement().

                I can submit a bug and attach a patch that fixes it.

                Also, as ProjectImportConfiguration#__getProjectName()

                is deprecated, is
                there a replacement method somewhere that might inherit
                same problem?

                Thanks in advance.


                _________________________________________________
                m2e-users mailing list
                m2e-users@xxxxxxxxxxx <mailto:m2e-users@xxxxxxxxxxx>
                https://dev.eclipse.org/__mailman/listinfo/m2e-users
                <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

            <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


Back to the top