Details
-
Bug
-
Resolution: Unresolved
-
Neutral
-
None
-
5.4.5
Description
The getLastModified() method of DevelopmentModeClasspathFile uses this code to determine a resource URL:
final URL resourceUrl = ClasspathHelper.contextClassLoader().getResource(jarFile.getRelativePath());
However, the openStream() method returns jarFile.openInputStream() directly, which in our case (we use our own class loader in development) means that DevelopmentModeClasspathFile doesn't use the same resource for the output stream and the last modified date!
We now use a patched version of DevelopmentModeClasspathFile in which openStream() determines the resourceURL exactly as in getLastModified() and then returns resourceURL.getInputStream(). We hope you'll incorporate this change into your code base, so we can drop our patched class with a future release.
Checklists
Attachments
Issue Links
- caused by
-
MAGNOLIA-6523 Refactor ClasspathResourceOrigin and stabilise its hot resource modification support
-
- Closed
-
- relates to
-
MAGNOLIA-8605 NullPointerExceptions NPEs when starting Magnolia 6.3 in development mode
-
- Closed
-
-
MAGNOLIA-6433 Resouces in filesystem and classpath can be changed without restarting magnolia to improve experience for developers.
-
- Closed
-