Actually, there is a 'é' inside a comment in my ivy file. In my source tree, the ivy.xml is written with the correct encoding. In the cache the resolved-XXX.xml prolog say UTF-8, but is written using the default encoding.
I updated XMLModuleDescriptionUpdater and XmlModuleDescriptor (the classes who are writing the invalid file in the cache) in order to force the prolog (if present) and the character-set to UTF-8. I will enter a jira issue, with the patch. By the way, I saw that in some case you actually make a complete copy of the original ivy.xml, including the comments. What are the reason for that? Gilles > -----Original Message----- > From: Xavier Hanin [mailto:[EMAIL PROTECTED] > Sent: Monday, November 27, 2006 6:38 PM > To: ivy-user@incubator.apache.org > Subject: Re: 1.4.1 incompatibility with 1.4.0 ? > > On 11/27/06, Gilles Scokart <[EMAIL PROTECTED]> wrote: > > > > > > > > Strange : > > Caused by: java.text.ParseException: Invalid byte 2 of 3-byte UTF-8 > > sequence. in file:/C:/Documents and Settings/gscokar > > t/.ivy/cache/[EMAIL PROTECTED] > > > Yes, this is strange. Maybe you changed of java version > between the time of file writing and parsing. > > I guess there is a encoding missing somewhere. I will continue to > > investigate to find who write this XML (and check if the > XML is indeed > > incorrect). If I find something, I will introduce a Jira issue. > > > The fille is written in Ivy.resolve method (Ivy.java:1142). > > Thanks for you help. > > > > By the way, what is the support java version? > (IllegalStateException > > seems to accept a chained Throwable parameter only since 1.5?). > > > JDK 1.4 supports chained exception with ex.initCause(cause). > JDK 1.5 only > eases the process of initializing the cause within the ISE > constructor. > > Xavier > > Gilles > > > > > > > -----Original Message----- > > > From: Xavier Hanin [mailto:[EMAIL PROTECTED] > > > Sent: Friday, November 24, 2006 12:18 PM > > > To: ivy-user@incubator.apache.org > > > Subject: Re: 1.4.1 incompatibility with 1.4.0 ? > > > > > > On 11/24/06, Gilles Scokart <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > I just migrated to 1.4.1 (I know, it is late). > > > > > > > > My project is a mutli-module project. The first module > > > build correctly. > > > > But when I build the second one, I got the next error : > > > > > > > > build_base.xml:203: impossible to publish artifacts for [ > > > XXXX | core > > > > | <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED] ]: impossible to > > > deliver [ XXXX | > > > > core > > > > | > > > > <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED] ]: > > > java.lang.IllegalStateException: > > > > bad ivy file in cache for [ XXXX | core | > > > <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]: > > > > please clean and resolve again > > > > > > > > > > > > My build perform successfully the resolve. I retried, > and I always > > > > get the same result. > > > > > > > > > > > > If I delete the cache and go back to my 1.4.0 version, > the problem > > > > disapear. > > > > > > > > Did anyone have an idea of where to serach for a solution? > > > > > > > > > This is strange, certainly a bug, but difficult to know the > > > cause. The problem is raised in this code: > > > URL ivyFileURL = null; > > > try { > > > ivyFileURL = ivyFile.toURL(); > > > md = > > > XmlModuleDescriptorParser.getInstance().parseDescriptor(this, > > > ivyFileURL, validate); > > > > > > md.setResolvedModuleRevisionId(ModuleRevisionId.newInstance(mrid, > > > revision)); > > > md.setResolvedPublicationDate(pubdate); > > > } catch (MalformedURLException e) { > > > throw new RuntimeException("malformed url > > > obtained for file "+ivyFile); > > > } catch (ParseException e) { > > > throw new IllegalStateException("bad ivy file > in cache for > > > "+mrid+": please clean and resolve again"); > > > } > > > > > > which is part of the deliver method on the Ivy class. The > > > problem is that the message doesn't say much about the > > > original ParseException... If you can compile Ivy from > > > source, I'd suggest adding the ParseException as the cause of > > > the ISE, so that you get more details. > > > > > > - Xavier > > > > > > SCOKART Gilles > > > > > > > > FUJITSU > > > > Mommaertslaan 16a, B-1831 Diegem > > > > Mob: +32 486 30 75 58 > > > > E-mail: <mailto:[EMAIL PROTECTED]> > > > > [EMAIL PROTECTED] > > > > Web: <http://www.fujitsu.com/be/> http://www.fujitsu.com/be/ > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >