karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Byrne (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (KARAF-3811) Exception thrown when including the feature "feature" in Maven karaf:assembly goal
Date Thu, 02 Jul 2015 14:03:04 GMT

    [ https://issues.apache.org/jira/browse/KARAF-3811?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14611990#comment-14611990

Jonathan Byrne commented on KARAF-3811:

For some reason, a lock is being maintained on JAR files after they are extracted from the
KAR.  Later in the process, the same JAR is copied from the Maven repository to the same location
where the KAR was extracted.  A FileSystemException is thrown because the destination file
is locked.  

I can't figure out why the file is still locked and I suspect it may be an issue specific
to the Windows HotSpot JVM.  Ideally, I think the file should not be copied more than once.
 However, that change was going to be more substantial than I was willing to tackle.  Instead,
I changed the download method to ignore the FileSystemException exception from a failed overwrite
caused by a file lock.  This definitely feels hackish to me because it doesn't address either
of the two root issues.  However, it was fast, it worked, and it has a low probability of
causing other problems.

> Exception thrown when including the feature "feature" in Maven karaf:assembly goal
> ----------------------------------------------------------------------------------
>                 Key: KARAF-3811
>                 URL: https://issues.apache.org/jira/browse/KARAF-3811
>             Project: Karaf
>          Issue Type: Bug
>          Components: karaf-profile, karaf-tooling
>    Affects Versions: 4.0.0
>            Reporter: Jonathan Byrne
>              Labels: maven
>         Attachments: KARAF-3811.patch, pom.xml
> The exception below is thrown when you include the feature named "feature" in the Maven
configuration. Attached is a POM file that replicates the error. 
> Suppressed: java.nio.file.FileSystemException: C:\dev\code\karaf-test\target\assembly\system\org\apache\karaf\features\org.apache.karaf.features.core\4.0.0\org.apache.karaf.features.core-4.0.0.jar:
The process cannot access the file because it is being used by another process.
>         at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
>         at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
>         at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
>         at sun.nio.fs.WindowsFileCopy.copy(WindowsFileCopy.java:165)
>         at sun.nio.fs.WindowsFileSystemProvider.copy(WindowsFileSystemProvider.java:278)
>         at java.nio.file.Files.copy(Files.java:1274)
>         at org.apache.karaf.profile.assembly.Builder$3.downloaded(Builder.java:969)
>         at org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader$1.operationComplete(MavenDownloadManager.java:133)
>         at org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader$1.operationComplete(MavenDownloadManager.java:127)
>         at org.apache.karaf.features.internal.download.impl.DefaultFuture.notifyListener(DefaultFuture.java:344)
>         at org.apache.karaf.features.internal.download.impl.DefaultFuture.addListener(DefaultFuture.java:293)
>         at org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader.download(MavenDownloadManager.java:127)
>         at org.apache.karaf.profile.assembly.Builder.installArtifact(Builder.java:959)
>         at org.apache.karaf.profile.assembly.Builder.bootStage(Builder.java:771)
>         ... 26 more

This message was sent by Atlassian JIRA

View raw message