On Sun, 02 Jul 2017 11:36:51 +0200, Karl Heinz Marbaise
<khmarba...@gmx.de> wrote:
Hi Robert,
On 02/07/17 11:19, Robert Scholte wrote:
I'm not 100% sure if this will fix the issue.
There are 2 issues which both result in an
ArrayIndexOutOfBoundsException.
One has to do with a process instruction inside the plugin
configuration (fixed).
You mean the m2e configuration thing like "<?m2e ...>"...
This is fixed ,cause this will fail in all Maven versions if you use a
parent which contains such configuration...Tested with the current
master of plexus-utils it works fine...
But if we have a new release of plexus-utils we could at least tell
people in such cases to replace the plexus-utils to prevent this issue...
It is probably a bit difficult to explain, because it is not as simple as:
if ArrayIndexOutOfBoundsException then upgrade plexus-utils.
And I expect that the m2e is not used that often, which would imply that
it's almost every time the invalid XML.
The other has to do with invalid XML.
Ok this is a different story...
It looks to me that most of the time the second issue is being hit.
Clearing the local repository and re-downloading the pom file is the
cure. (this is actually the best way to identify which of the 2 is
being hit)
What I've seen is that sometime the content of the pom is duplicated,
i.e.
<project>
...
</project>
<project>
...
</project>
I could imagine that this happens when a 2 threads download the same
pom at the same time and for some reason are appended.
From the same Maven run ? Or by using two different maven runs which
use the same local cache ?
I haven't investigated this yet. You would expect that within one JVM the
Artifact Resolver should be aware of it.
Up until Maven 3.3.9 the XML stopped at the closing root-tag, not at
the document-end.
Maybe I misunderstand a thing but isn't the reading of the XML file done
by plexus-utils?
True, the upgrade of plexus-utils in Maven 3.3.9 exposed this issue.
When the pom is not a valid XML, then IMHO the pom should be
re-downloaded.
There are now a couple of issues:
- you cannot see which pom is causing the ArrayIndexOutOfBoundsException
- you cannot simply switch to strict checksums at system level. You
cannot use MAVEN_OPTS in this case because --strict-checksum is a Maven
argument, not a JVM argument.
Couldn't checkSum policy being used in settings.xml to configured to
fail ?
I think we should reconsider MNG-5506 and MNG-5728.
Assuming all repositories are hosted with a repository manager, I think we
should be able to switch to strict by default.
Robert
Kind regards
Karl Heinz
These issues need to be fixed in Maven.
So I would go for improving this in Maven, just updating plexus-utils
will give users false hope.
Maybe we don't need to make the release of plexus-utils very prominent
;-)
Kind regards
Karl Heinz Marbaise
thanks,
Robert
On Sun, 02 Jul 2017 10:52:06 +0200, Karl Heinz Marbaise
<khmarba...@gmx.de> wrote:
Hi,
based on the current issue related to reading pom files etc.
(ArrayIndexOutOfBoundsException)
I would like to make a new release of Plexus-Utils 3.1.0.....after
that people can simple replace the old version of plexus-utils-3.0.24
in their maven installation with the new one until we made a new
release of Maven Core ....
If there are no objections I would like to start with the release at
Tuesday ?
Kind regards
Karl Heinz Marbaise
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org