[
https://issues.apache.org/jira/browse/NETBEANSINFRA-262?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17476817#comment-17476817
]
Eric Bresie commented on NETBEANSINFRA-262:
-------------------------------------------
On Fri, Jan 14, 2022 at 11:19 PM Jaroslav Tulach <[email protected]>
wrote:
FYI: https://github.com/apache/netbeans/commit/1b96b56 & co.
It gets interpreted by the NetBeans runtime system.
-jt
čt 13. 1. 2022 v 21:30 odesílatel Jean-Marc Borer <[email protected]>
napsal:
>
> https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#classpath
>
> But still, it is a very special case here since I have never seen URL such
> as "%24%7Bjava.home%7D%2F/lib/ext/jfxrt.jar". ${xxx} is a dynamic value
> that shall be replaced at runtime. I really wonder if the manifest gets
> properly interpreted with such a construction.
>
> On Thu, Jan 13, 2022 at 8:25 PM Jean-Marc Borer <[email protected]> wrote:
>
> > True. Then the issue lies in the maven nbm plugin that doesn't understand
> > the URL escaping.
> >
> > I tested by manually modifying the manifest to restore the old values.
> The
> > warning message is gone.
> >
> > On Thu, Jan 13, 2022 at 7:04 PM Matthias Bläsing <
> > [email protected]> wrote:
> >
> >> Am Donnerstag, dem 13.01.2022 um 17:54 +0000 schrieb Jean-Marc Borer:
> >> > When building my NB RCP application with Maven, I get:
> >> >
> >> > Could not resolve Class-Path item in
> >> > org.netbeans.api:org-netbeans-libs-javafx:nbm-file:RELEASE124, path
> >> > is:%24%7Bjava.home%7D/lib/ext/jfxrt.jar, skipping
> >> >
> >> > I checked the manifest of module org-netbeans-libs-javafx.jar
> >> > And actually I found:
> >> > ....
> >> > OpenIDE-Module-Requires: org.openide.modules.ModuleFormat1
> >> > Class-Path: %24%7Bjava.home%7D/lib/ext/jfxrt.jar
> >> >
> >> > Which is an url encoded string of ${java.hom}/lib/ext/jfxrt.jar
> >> >
> >> > I build on zulu8.58.0.13-ca-fx-jdk8.0.312-win_x64\jre\lib\ext
> >> > where jfxrt.jar exists... and JFX works in the application later. Just
> >> > wondering why such warning is generated.
> >> >
> >> > I suspect that the Maven checker is somehow not understanding properly
> >> this
> >> > classpath entry in the manifest.
> >> >
> >> > Any idea?
> >>
> >> The commit that changes this is here:
> >>
> https://github.com/apache/netbeans/commit/1b96b56ac3bfda8bd9b97f36c25901e84289cb23
> >>
> >> And is part of this:
> >>
> >> https://github.com/apache/netbeans/pull/2761
> >>
> >> The TL;DR version is (if I remember correctly): the JAR File
> >> Specification says, that the Class-Path attribute is a list of URLs and
> >> since javac 11 this is actually enforced.
> >>
> >> Try this:
> >>
> >> new URI("%24%7Bjava.home%7D%2F/lib/ext/jfxrt.jar");
> >> new URI("${java.home}/lib/ext/jfxrt.jar");
> >>
> >> It blows for the second line.
> >>
> >> Hope that clears it up.
> >>
> >> Matthias
> Class-Path manifest entry not properly URL decoded
> ---------------------------------------------------
>
> Key: NETBEANSINFRA-262
> URL: https://issues.apache.org/jira/browse/NETBEANSINFRA-262
> Project: Apache NetBeans Infra
> Issue Type: Bug
> Components: MU - Apache NetBeans NBM maven plugin
> Affects Versions: NBM Maven Plugin 4.6
> Reporter: Jean-Marc Borer
> Priority: Major
>
> Compilation of NB RCP apps lead to
> Could not resolve Class-Path item in
> org.netbeans.api:org-netbeans-libs-javafx:nbm-file:RELEASE124, path
> is:%24%7Bjava.home%7D/lib/ext/jfxrt.jar, skipping
> since the commit that changes this is here:
> [https://github.com/apache/netbeans/commit/1b96b56ac3bfda8bd9b97f36c25901e84289cb23]
> And is part of this:
> [https://github.com/apache/netbeans/pull/2761]
>
> ${java.home} is now URL encoded in the manifest. According to
> [https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#classpath]
> Every Class-Path are URLs and as such should be decoded accordingly and
> therefore the class CreateClusterAppMojo should be fixed:
> lines 376 shall become:
> try
> {
> classPath = URLDecoder.decode(ex.getClasspath(), "UTF-8");
> } catch (UnsupportedEncodingException exception)
> {
> throw new IllegalStateException(exception);
> }
>
>
>
>
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists