Reported in https://issues.apache.org/jira/browse/NETBEANSINFRA-262
And already fixed in master of
https://github.com/apache/netbeans-mavenutils-nbm-maven-plugin

On Thu, Jan 13, 2022 at 8:29 PM Jean-Marc Borer <jmbo...@gmail.com> wrote:

>
> 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 <jmbo...@gmail.com> 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 <
>> mblaes...@doppel-helix.eu> wrote:
>>
>>> Hi,
>>>
>>> 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.
>>>
>>> Greetings
>>>
>>> Matthias
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@netbeans.apache.org
>>> For additional commands, e-mail: dev-h...@netbeans.apache.org
>>>
>>> For further information about the NetBeans mailing lists, visit:
>>> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>>>
>>>
>>>
>>>

Reply via email to