You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Chesnay Schepler (JIRA)" <ji...@apache.org> on 2018/07/04 14:38:00 UTC

[jira] [Created] (FLINK-9743) PackagedProgram.extractContainedLibraries fails on Windows

Chesnay Schepler created FLINK-9743:
---------------------------------------

             Summary: PackagedProgram.extractContainedLibraries fails on Windows
                 Key: FLINK-9743
                 URL: https://issues.apache.org/jira/browse/FLINK-9743
             Project: Flink
          Issue Type: Bug
          Components: Client, Job-Submission
    Affects Versions: 1.4.2, 1.5.0, 1.6.0
            Reporter: Chesnay Schepler
             Fix For: 1.5.2, 1.6.0, 1.4.3


Submitting a jar that contains other jars on Windows fails with an exception:
{code}
org.apache.flink.client.program.ProgramInvocationException: Unknown I/O error while extracting contained jar files.
        at org.apache.flink.client.program.PackagedProgram.extractContainedLibraries(PackagedProgram.java:752)
        at org.apache.flink.client.program.PackagedProgram.<init>(PackagedProgram.java:194)
        at org.apache.flink.client.cli.CliFrontend.buildProgram(CliFrontend.java:833)
        at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:201)
        at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:1020)
        at org.apache.flink.client.cli.CliFrontend.lambda$main$9(CliFrontend.java:1096)
        at org.apache.flink.runtime.security.NoOpSecurityContext.runSecured(NoOpSecurityContext.java:30)
        at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1096)
Caused by: org.apache.flink.client.program.ProgramInvocationException: An I/O error occurred while creating temporary file to extract nested library 'lib/antrunner.jar'.
        at org.apache.flink.client.program.PackagedProgram.extractContainedLibraries(PackagedProgram.java:708)
        ... 7 more
Caused by: java.io.IOException: Unable to create temporary file, C:\Users\XXX\AppData\Local\Temp\1751416743_6922010711856647205lib\antrunner.jar
        at java.io.File$TempDirectory.generateFile(Unknown Source)
        at java.io.File.createTempFile(Unknown Source)
        at java.io.File.createTempFile(Unknown Source)
        at org.apache.flink.client.program.PackagedProgram.extractContainedLibraries(PackagedProgram.java:702)
        ... 7 more
{code}

{{PackagedProgram.extractContainedLibraries}} tries to replace all path separators using the platform-dependent {{File.separateChar}}, however the path separator for jars (and zips for that matter) is always {{/}}.

{code}
final JarEntry entry = containedJarFileEntries.get(i);
String name = entry.getName();
name = name.replace(File.separatorChar, '_');
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)