You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Cergey Chaulin (JIRA)" <ji...@apache.org> on 2017/11/26 03:07:00 UTC

[jira] [Updated] (IGNITE-6745) Java 9: rework usages of URLClassLoader.getURLs()

     [ https://issues.apache.org/jira/browse/IGNITE-6745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Cergey Chaulin updated IGNITE-6745:
-----------------------------------
    Attachment: IGNITE_6745__Java_9__rework_usages_of_URLClassLoader_getURLs__.patch

> Java 9: rework usages of URLClassLoader.getURLs()
> -------------------------------------------------
>
>                 Key: IGNITE-6745
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6745
>             Project: Ignite
>          Issue Type: Task
>          Components: general
>    Affects Versions: 2.3
>            Reporter: Vladimir Ozerov
>            Assignee: Cergey Chaulin
>             Fix For: 2.4
>
>         Attachments: IGNITE-6745.patch, IGNITE_6745__Java_9__rework_usages_of_URLClassLoader_getURLs__.patch
>
>
> We use this method in multiple places:
> 1) {{MessageCodeGenerator}}
> 2) {{BinaryContext}}
> 3) {{ClassesGenerator}}
> 4) {{GridUriDeploymentFileProcessor}}
> The problem is that in Java 9 application class loader is not {{URLClassLoader}}, so we cannot get URLs easily. Instead typically it is {{BuiltinClassLoader}}, which refers to {{URLClassLoader}} in it's internal field {{ucp}}.
> Let's refactor all usages of {{URLClassLoader.getURLs}} to some utility method, which will be able to handle both Java 7/8 and Java 9 (through reflection).



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)