Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8282444

Module finder incorrectly assumes default file system path-separator character

    XMLWordPrintable

Details

    • b12
    • windows
    • Verified

    Backports

      Description

        The module finder implementation incorrectly uses the path-separator
        character from the default file system, when mapping the relative path
        of an entry in an exploded module to a package name. This causes
        problems on Windows [*] when using a module finder with a custom file
        system that has a path-separator character that differs from that of the
        default file system, e.g. the zip file system (which uses '/',
        rather than '\' ).

        [*]
        java.lang.module.FindException: Error reading module: /m2
                at java.base/jdk.internal.module.ModulePath.readModule(ModulePath.java:350)
                at java.base/jdk.internal.module.ModulePath.scanDirectory(ModulePath.java:284)
                at java.base/jdk.internal.module.ModulePath.scan(ModulePath.java:232)
                at java.base/jdk.internal.module.ModulePath.scanNextEntry(ModulePath.java:190)
                at java.base/jdk.internal.module.ModulePath.findAll(ModulePath.java:166)
                at ModulesInCustomFileSystem.listAllModules(ModulesInCustomFileSystem.java:108)
                at ModulesInCustomFileSystem.testZipFileSystem(ModulesInCustomFileSystem.java:97)
                at ModulesInCustomFileSystem.testExplodedModulesInZipFileSystem(ModulesInCustomFileSystem.java:68)
                at ...
        Caused by: java.lang.module.InvalidModuleDescriptorException: Package q.r not found in module
                at java.base/jdk.internal.module.ModuleInfo.invalidModuleDescriptor(ModuleInfo.java:1212)
                at java.base/jdk.internal.module.ModuleInfo.doRead(ModuleInfo.java:330)
                at java.base/jdk.internal.module.ModuleInfo.read(ModuleInfo.java:129)
                at java.base/jdk.internal.module.ModulePath.readExplodedModule(ModulePath.java:689)
                at java.base/jdk.internal.module.ModulePath.readModule(ModulePath.java:320)
                ... 36 more

        Attachments

          Issue Links

            Activity

              People

                chegar Chris Hegarty
                chegar Chris Hegarty
                Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: