Skip to content

watchJars在windows中Bug #145

Closed
Closed
@kevin70

Description

@kevin70

TypeRegistry.java

if (GlobalConfiguration.jarsToWatch != null) {
    // 1.3 feature, can watch jars!
    String urlstring = url.toString();
    // example path: jar:file:/var/folders/cn/p3n4rh_n6z7gm6zwk53mtfc80000gp/T/_sl308369570226517394/foo.jar!/Foo.class
    int bangSlash = urlstring.lastIndexOf("!/");
    if (bangSlash != -1) {
        String pathInJar = urlstring.substring(bangSlash + 2);
        String remainingPrefix = urlstring.substring(0, bangSlash);
        int lastSlash = remainingPrefix.lastIndexOf(File.separator);
        String jarname = remainingPrefix.substring(lastSlash + 1);
        for (String jarToWatch : GlobalConfiguration.jarsToWatch) {
            if (jarname.equals(jarToWatch)) {
                reloadable = true;
                jarEntry = true;
            }
        }
    }
}

Jar路径
jar:file:/var/folders/cn/p3n4rh_n6z7gm6zwk53mtfc80000gp/T/_sl308369570226517394/foo.jar!/Foo.class

int lastSlash = remainingPrefix.lastIndexOf(File.separator);

windowsFile.separator为"**". 配置的jarnamefull path**. 导致jarname.equals(jarToWatch)永远为false.

Activity

ksfzhaohui

ksfzhaohui commented on Sep 15, 2015

@ksfzhaohui

我也遇到这个问题,你linux上可以用吗

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @kevin70@ksfzhaohui

        Issue actions

          watchJars在windows中Bug · Issue #145 · spring-projects/spring-loaded