Skip to content

Don't handle *.gwtar and other normal files ending with *ar as archives #82

Description

@phbreitbach

The tool handles everything with file suffix *ar as a potential Java archive:

System.err output on an example with *.gwtar
-- Problem: D:.m2\repository\com\google\gwt\gwt-user\2.7.0\gwt-user-2.7.0.jar!/com/google/gwt/user/User.gwtar - java.lang.RuntimeException: Inner-zip - could not find ZIP magic number: D:.m2\repository\com\google\gwt\gwt-user\2.7.0\gwt-user-2.7.0.jar!/com/google/gwt/user/User.gwtar

Another example with a service file called ComponentRegistrar
-- Problem: C:\Users\XYZ\AppData\Roaming\JetBrains\IntelliJIdea2020.2\plugins\Kotlin\kotlinc\lib\allopen-compiler-plugin.jar!/META-INF/services/org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar - java.lang.RuntimeException: Inner-zip - could not find ZIP magic number: C:\Users\XYZ\AppData\Roaming\JetBrains\IntelliJIdea2020.2\plugins\Kotlin\kotlinc\lib\allopen-compiler-plugin.jar!/META-INF/services/org.jetbrains.kotlin.compiler.plugin.ComponentRegistrar

Snippet from method fileType:

} else if ("zip".equalsIgnoreCase(suffix)
    || "jpi".equalsIgnoreCase(suffix)
    || "hpi".equalsIgnoreCase(suffix)
    || suffix.endsWith("ar")) {
  return 0;
}

*.gwtar seems to be some proprietary file of GWT maybe similar to a *.class file (haven't had the time to research on that up to now ...
ComponentRegistrar is obviously not a ZIP

So the detection of file suffixes which are regarded as ZIP needs to be refined I think ...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions